"Но заменить С++ в полной мере он вам не позволит.

В какой то момент вы просто станете смотреть на лапшу прилипшую ко дну кастрюли и плакать." - типа на плюсах не так происходит? Пишут проект годами, а потом в один прекрасный момент понимают, что не способны его более поддерживать 😂
"Когда в вашем проекте будут появляться длинные макароны, более 20 блоков можно задуматься о переносе их в С++" - можно задуматься о функциях, компонентах, макросах. В плюсах будет тот же винегрет только в профиль - функции по 200 строк.

68 ответов

31 просмотр

Разумеется легаси есть везде, но макаронное легаси мне кажется одним из самых ужасных.

Не понимаю людей которые макаронят так много

Иван-Ру Автор вопроса

в движке тоже встречал странные вещи 😂 а 16к - это уже хоррор )

Иван Ру
в движке тоже встречал странные вещи 😂 а 16к - это...

Видели бы вы функцию, которая блипринты компилирует.... Там у тебя весь компилятор считац в одной фукнции)))

Иван-Ру Автор вопроса
Viktor
Не понимаю людей которые макаронят так много

в начале своей карьеры как-то видел выражение "крут не тот программист, который умеет писать простые программы на плюсах, но тот который на Вижуал бейсике может написать сложную программу" 😉

Иван-Ру Автор вопроса
Используйте Godot ибо он приятный
тут вопрос в определении сложности

сложно не в контексте читабильности конечно 😂 а в полезности для юзера

Иван Ру
в начале своей карьеры как-то видел выражение "кру...

Язык это просто инструмент, который решает свои задачи. Хороший программист использует тот язык, который подходит под решение конкретной задачи. Блюпринт решает задачу доступности движка для начинающих разрабов и быстрого написания простых фичь.

Иван-Ру Автор вопроса
Viktor
Язык это просто инструмент, который решает свои за...

конечно, если речь про среднего уровня программиста. Но дело в том, что в "непредназначенных" языках могут быть те возможности, о которых большинство и не подозревает.

Aleksei DTG
И слабых компьютеров!

А ты видел ProcessEvent? Это тебе не указатель в стек положить.

Иван Ру
конечно, если речь про среднего уровня программист...

Я знаю о возожности макарон медленно работать и не удобно читаться.

Иван-Ру Автор вопроса
Viktor
Я знаю о возожности макарон медленно работать и не...

как они могут не удобно читаться, если они создавались для удобства прочтения? Надо эпикам рассказать, что их инструмент провалился )) но а скорость зависит во многом от программиста. Тем более, что самые скоростные вещи должны делаться движком - просчет вершин, подгрузка ресурсов и прочее.

Иван Ру
в начале своей карьеры как-то видел выражение "кру...

А чего на visual, я просто на basic писал, как и многие в начале девяностых)))

Иван Ру
как они могут не удобно читаться, если они создава...

Еще раз. Блюпринт решает проблему доступности для начинающих. Большую лапшу на несколько экранов проще читать в виде с++ функции, которая влезает в экран.

Иван-Ру Автор вопроса
Viktor
Еще раз. Блюпринт решает проблему доступности для ...

большие функции в 200 и более строк не удобнее читать, чем лапшу.

Viktor
Еще раз. Блюпринт решает проблему доступности для ...

Мне блупринты удобны очень, а если что очень большое получается, то можно сделать на плюсах и в одну функцию для блупринта запихнуть))))

Viktor
Еще раз. Блюпринт решает проблему доступности для ...

А ещё высокой скорости изменений(например, прототипирования, либо конфигурирования)

Иван-Ру Автор вопроса
Artyom Volkov
У меня много вопросов к таким функциям

потому если следуешь правилу не писать функции более 10 строк, то и лапша из более 10 элементов тоже не получится.

Иван Ру
большие функции в 200 и более строк не удобнее чит...

Удобнее, там есть подсветка и Ctrl+F гораздо удобнее, чем в бп В принципе с текстом удобнее работать, т.к. на этом уже много копий сломано =)

Иван-Ру Автор вопроса

а принтах у тебя поиск не работает? элементы не выделяются разным цветом? Но лично я не пишу громадных функции как в принтах так и в плюсах. Поэтому не вижу лапши не там ни тут, не люблю лапшу, она плохо переваривается )

Большие функции на С++ это не так страшно, как кажется, поверь

Иван Ру
а принтах у тебя поиск не работает? элементы не вы...

Я же написал, чувак Удобнее Дольше с этим люди работают Дольше инструменты эволюционируют Больше ресурсов потрачено Чаще я с этим работал == удобнее

Иван-Ру Автор вопроса
Viktor
Большие функции на С++ это не так страшно, как каж...

ахахах, если б не приходилось дописывать за "бесстрашными" их вермишель.

Иван-Ру Автор вопроса
Kirill .AJIADb9
Я же написал, чувак Удобнее Дольше с этим люди раб...

возможно, тебе удобнее. Но мне удобнее, когда код структурирован и есть четкая архитектура. А когда нужно поисками выискивать нужные участки кода - это ни в каком редакторе не удобнее.

Иван Ру
возможно, тебе удобнее. Но мне удобнее, когда код ...

Ясно, приходи через пару лет, ещё раз поговорим об этом =)

Иван Ру
в начале своей карьеры как-то видел выражение "кру...

На VB программы писать по сложности, то же самое что и на C#, потому как отдельно от .NET и переопределения API функций Винды а также встроенных инструментах -ты там мало что напишешь, VB это сложный язык если его рассматривать в стеке технологий, Он лишь слегка засахаренный по синтаксису. Понятно что написать софт на VB в разы быстрее чем на C++.Он медленный в нагруженных задачах - это плата за "сахар".

Иван-Ру Автор вопроса
Иван Ру
а что через пару лет произойдет? )

Ну хз, максимализм пройдёт, например Опыта появится побольше Пока это выглядит очень прямолинейно, отчего кажется что опыта с гулькин хуй

Serhii R
"выучишь 800 нод" (с) 😂

да, но потом в С++ можно и БП узлы использовать

Иван-Ру Автор вопроса
Kirill .AJIADb9
Ну хз, максимализм пройдёт, например Опыта появитс...

ну да, более 10 лет писать на плюсах это с гулькин...

Serhii R
"выучишь 800 нод" (с) 😂

ну и подход у вас)) бытовой, как у барана, глядящего на новые ворота) кто кого перебодает))

Первые 100 страниц вроде Совершенного Кода нужно курнуть, бро

Kirill .AJIADb9
Из C++ в принципе можно бп использовать

да, Я это и имел в виду что там можно опыт применять если есть понимание работы С++

Иван Ру
ну да, более 10 лет писать на плюсах это с гулькин...

Ну тогда ты идеалист и я тихо удаляюсь в угол =) Спорить особого смысла не вижу =(

Denis Kuznetsov
ну и подход у вас)) бытовой, как у барана, глядяще...

это не мой подход. это местный мем, кавычки цитата, копирайт. чувство юмора у вас батенька отсутствует

Используйте Godot ибо он приятный
да, Я это и имел в виду что там можно опыт применя...

Это называется логика и умение структурировать и декомпозировать 🤣

Serhii R
это не мой подход. это местный мем, кавычки цитата...

Я просто не понял, что над этим надо смеяться))

Иван-Ру Автор вопроса
Dethlord
Первые 100 страниц вроде Совершенного Кода нужно к...

и что в совершенном коде пишут, что если ты делаешь вермишель в принтах, то при переходе на плюсы ты каким-то чудом начнешь писать функции по 10 строк?

Denis Kuznetsov
Я просто не понял, что над этим надо смеяться))

там даже смайл был. ну да ладно. проехали

Kirill .AJIADb9
Это называется логика и умение структурировать и д...

это потому что я за такой подход что надо всё изучать постепенно и тогда не будет сильных провалов, но в тоже время будет прогресс и тем самым не будет отторжения, как в игре: накачка дофамином)

Иван Ру
потому если следуешь правилу не писать функции бол...

Так важен баланс, между всеми возможностями движка

Это по первому утверждению

Иван-Ру Автор вопроса

за свой опыт понял, что глупо не использовать визуальные средства и писать всякие объекты-мегакотроллеры для создания тех алгоритмов, которые можно настроить визуально. Не стоит отвергать прогресс и удобство разработки. И не стоить фанатеть от плюсов, шаблонов и т.д. Главное, что решить задачу быстро и качественно, а не "как в статье написано".

Иван-Ру Автор вопроса
Dethlord
Это по первому утверждению

а, ну так да, плюсы ничего не дадут, если нет понимания того как строить архитектуру. Но если уже есть опыт создания гибкой архитектуры, то и принты очень даже подходящий инструмент. З.Ы. конечно, местами всеравно приходится плюсы использовать, не писать же формулы диаграммами 😂

Иван Ру
за свой опыт понял, что глупо не использовать визу...

Я предпочитаю БП для скриптинга на уровнях. Когда на уровне надо подружить сотни объектов друг с другом - это лучшее решение. Также на них приятно простую логику писать и мишуру приделывать

Иван Ру
за свой опыт понял, что глупо не использовать визу...

Писать объекты мегаконтроллеры - это антипаттерн, не важно на чем ты пишешь.

Иван-Ру Автор вопроса
Viktor
Писать объекты мегаконтроллеры - это антипаттерн, ...

дело НЕ в размере, а в концепции - писать кодом то, что настраивается визуально.

Иван Ру
а, ну так да, плюсы ничего не дадут, если нет пони...

Поддержка формул есть в BP, не обязательно спускаться на уровень С++

Иван Ру
дело НЕ в размере, а в концепции - писать кодом то...

Когда делаешь большие системы тебе на с++ нужно написать то, что ты потом настроишь визуально. Когда я делал маленькие проектики по 3-4 месяца я тоже думал, что все можно намакаронить.

Иван-Ру Автор вопроса
Viktor
Когда делаешь большие системы тебе на с++ нужно на...

а я начинал со сложных систем, где все прописано кодом. Поэтому сейчас так люблю визуальные средства и понимаю, что если понимать зачем они созданы, то качественные решения на них так же можно создавать. Грамотная архитектура и на принтах возможна - там все те же функции, объекты, классы.

Иван Ру
а я начинал со сложных систем, где все прописано к...

Грамотная архитектура возможна, не спорю. Но блюпринт же попимо того что не удобный еще и дико медленный же?

Иван-Ру Автор вопроса

вот именно с этим я и не согласен. Во-первых, описание алгоритмов диаграммами имеет свои плюсы и минусы. Минусы громоздкость, а плюсы читабильность и очевидность. Соответственно, нужно не стеснятся создавать кучу функции с небольшим количеством диаграмм, тогда и выглядить будет все как настольная книга. Во-вторых, скорость зависит от того какие алгоритмы и как реализовывать. По своему другому направлению пишут проекты и на php и на js, которые по факту не могут быть самыми быстрыми, но производительности более чем хватает. Естественно, что на принтах не стоит писать перебор пикселов изображения и подобные вещи, но для логики игры, где нужно сделать выбор по булеву значению - что там может быть медленным?

Иван Ру
вот именно с этим я и не согласен. Во-первых, опис...

Там медленно вообще все. У тебя все с++ фнукции, который он дергает ищутся по указателям и именам, все параметры аллоцируются в куче. Постоянно он ходит в операту зачем то. И это все нужно что бы просто вызвать один евент, безотносительно того, что в самом евенте. На с++ нет таких накладных расходов на вызов функции

Иван-Ру Автор вопроса
Viktor
Там медленно вообще все. У тебя все с++ фнукции, к...

тогда почему не писать на асссемблере? знаешь сколько накладных расходов в плюсах? ты одну функцию дернул, а там за сам вызов 10+ операций сработало, которые тебе никак не нужны.

Иван Ру
тогда почему не писать на асссемблере? знаешь скол...

Ну нееее, это уже крайность. Да и на самом деле с++ не много накладных расходов дает. А там где они есть можно использовать интринзики, которые решают большой спектр проблем

Иван-Ру Автор вопроса
Dethlord
логика игры может быть тяжелой

это уже конкретика. Мне как-то доводилось оптимизировать работу древовидных списков, которые медленно грузились. В итоге выяснилось, что работу удалось ускорить раз в 10 ) А останется ли тяжелая логика таковой после оптимизации заранее явно не скажешь.

Иван Ру
тогда почему не писать на асссемблере? знаешь скол...

потому что современный компилятор это сделает лучше чем ты, если ты не бородач с C++ Conf

Иван-Ру Автор вопроса
Viktor
Ну нееее, это уже крайность. Да и на самом деле с+...

вот я так же считаю и про принты, что это уже крайность. Достаточно производительно они решают свои задачи.

Иван-Ру Автор вопроса
Dethlord
потому что современный компилятор это сделает лучш...

лучше чем я не сделает, в отладке где асм код вижу чего бы можно было вырезать оттуда. Это, насколько, мне кажется, очень очевидно даже для начинающего разработчика на ассемблере. Но, понимаю зачем это нужно и согласен с платой за удобство разработки с поддержкой ООП и чтобы не приходилось в стек руками добавлять параметры и не листать справочник операций проца.

Похожие вопросы

Обсуждают сегодня

Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Как думаете через какой сервис они верифицируют?
inc.
5
Добрый день! Подскажите, каким сборщиком фронта для OctoberCMS кто пользуется? Я имею ввиду сборщики, с которыми можно работать по стандартной схеме директорий октября. Я испо...
Николай Афанасенко
2
Вопрос на перед, на следующую пятницу. Сколько строк кода можно вешать на одного программиста, понятно что если проект хорошо написан то можно и миллион. Но есть же где то пре...
AlekseyK Kluchnikov
31
Немного оффтопа: а кто на чем сидит для осдева в плане ide/редактора? Последнее время сидел на vscode, но я его прям не могу нормально воспринимать, перешел на сlion, но меня...
Evg Resh
29
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
День добрый, подскажите пожалуйста, есть ли какой-то способ сказать ребару не компилировать определённое приложение? Всю доку их перечиатл ничего подобного не нашёл
Кирилл
14
На чём в основном щас пишут мини апы? Vuejs?
Goot evening Not everyone
6
Вопрос: Здравствуйте! У меня возникла проблема с использованием плагина Mall в OctoberCMS. Я использую все файлы и компоненты в их исходном виде, без изменений. Однако на стр...
𐩱𐩪𐩣𐩱𐩲𐩺𐩡
8
Я правильно понимаю что нет способов получить список ожидающих заявок на вступление в группу с помощью бота из mtproto?
Шамиль Прилов
9
Карта сайта