Necrys
с чего ты взял ?
DevilDevil
> которые компилируются 40 минут ?
Покажи мне казуалку, которая компилится столько.
MaNGOS (полноценный MMORPG-сервер) у меня компилится в 8 раз быстрее.
_zerg_
читать умеем да ?
про сорок минут написал не я, а Necrys
убер проекты существуют. И чем уберее, тем проще их писать на Delphi.
Многие игры пишутся на Delphi. Движок Venom был написан на Delphi. XProger недавно забабахал Lost Sector на Delphi. Нормально работает. Топовая графика (ну или хотя бы на уровне). Компилируется пару секунд. Проект на С++ компилировался бы минут 5.
я поэтому и создал ветку
я могу понять когда какие-то мега супер пупер оптимизации пишутся на С++
но всё остальное логичнее писать на Delphi, FreePascal, C#, Lua, Java, Flash
DevilDevil
> а время компиляции тебя не смущает?
В своих больших проектах эта проблема часто легко устраняется (есть несколько способов). Не со всеми проектами эту проблему можно убрать, но в большинстве случаев я проблем почти не испытываю.
JINGE
>C++ гумно. Те, кто действительно познал жизнь, пишут на pure C. Это всем давно известный факт.
+1
laMer007
сколько длится средняя компиляции среднего казуального проекта на среднем компьютере разработчика ?
(неполная компиляция)
DevilDevil
> но всё, что компилируется дольше секунды - то долго !
Неужели с большими проектами не работали? На любом компиляторе любого языка можно получить компиляцию больше секунды на таких проектах. Берите полностью интерпретируемые языки, если компиляция не устраивает. Только такие программы выполняются долго, а не компилируются. В игрострое скрипты вообще популярны. Если движок игры на С++ написал (или взял готовый) и его не меняешь, то подолгу перекомпилировать не нужно, дальше все скрипты пишутся без долгой компиляции и проблем нет.
laMer007
сколько длится средняя компиляции среднего казуального проекта на среднем компьютере разработчика ?
(неполная компиляция)
Я работал над проектом, который на Intel 3000 c precompiled headers компилировался 2-3 минуты
проект небольшой
DevilDevil
> я пишу быстро и компилирую быстро, и результат получаю тоже быстро. Как раз потому что не жду компиляции минутами
А не нужно так делать: Написал строчку и сразу проверяешь компиляцией. Исправил одну ошибку и сразу проверяешь компиляцией.
Антипаттерн programming by permutation до добра не доводит. Писать нужно сразу много кода, а только потом компилировать. Исправлять ошибки сразу по много, а не по одной и перекомпилировать.
laMer007
ты намеренно игнорируешь напрямую поставленные мной вопросы ?
laMer007
> Писать нужно сразу много кода, а только потом компилировать. Исправлять ошибки
> сразу по много, а не по одной и перекомпилировать.
мне так неудобно
считаю эффективным другой подход
laMer007
> Берите полностью интерпретируемые языки, если компиляция не устраивает. Только
> такие программы выполняются долго, а не компилируются.
На правах оффтопа:
Есть и объединённые интерпретаторы с компиляторами, пока идёт отладка - это интерпретатор, когда отладка на паузе, можно даже код править, не завершая работу, можно из окна отладки вызывать ф-ции, менять значения переменных. Это всё о VB6, жаль, что он устаревает :(, в более новых vb.net и C# этого уже нет.
Mikle
на правах офтопа
раз уж мы говорим об оптимизации
почему ты свой движок преимущественно писал на ассемблере, а не С++? Ну или хотя бы интрисинками ?
DevilDevil
> почему ты свой движок преимущественно писал на ассемблере, а не С++?
Потому, что это (SR2D) софт рендер. Когда C++ научится эффективно компилировать хотя бы в MMX, буду на нём писать такие вещи. А вот dx_vb написан полностью на C++, потому что там ассемблер не нужен, а бейсика не хватает. То есть я под задачу выбрал средство.
Mikle
просто я думал на С++ интрисинками можно добиться чуть ли не чего угодно
в своё время сталкивался с SSE - очень доволен
_zerg_
> Из всей кучи проблем ты выбрал именно время компиляции. Как-то по детски что ли.
То есть по ставнению с остальными граблями эта проблема выглядит детским садом, согласен на все сто )
Necrys
> Вбивание кода руками и компиляция - лишь малый процент времени от процесса девелопмента.
Если ты только константы в код вбиваешь, то может быть, в остальных случаях приходится думать не только что написать, но ещё и как написать это на С++, чтобы потом не пришлось переписывать.
Про время компиляции погу сказать вот что: уже долгое время работаю с Java в Eclipse IDE. Там есть опция "Build Automatically" - файл компилируется во время каждого сохранения. Кнопки "Build" для Java как таковой нет, а есть команда в меню на случай, если автобилд отключен, а при запуске проект всё равно соберётся. Так вот про компиляцию я уже и забыл. Захотел проверить изменения в коде - нажал запуск и всё. Поэтому ужасно бесит, когда работая в том же эклипсе с С++ проект каждый раз билдится по нескольку секунд перед запуском. Ну и конечно, нельзя тут же не упомянуть, что ещё ни одна IDE для С++, включая и Eclipse, не может без компиляции кода высветить все ошибки в нём, из-за чего иногда приходится компилировать по сути в холостую.
DevilDevil
> сколько длится средняя компиляции среднего казуального проекта на среднем компьютере разработчика ?
> (неполная компиляция)
Даже древний NetHack или GnuGo, написанные на Си компилируются по нескольку минут. Полная компиляция буста может занять несколько часов. Не понимаю тех, кто заливает про несколько минут на совмененных проектах и думает, что их не разоблачат. Либо там не используют всего того, без чего современный С++ не мыслим - boost в целом и шаблонокод в частности, либо кода на С++ там действительно кот наплакал. От первого до второго один шаг.
Тема в архиве.
Тема закрыта.