Тема: C\C++
Показать сообщение отдельно
Старый 27.02.2015, 20:49   #1
mr.DIMAS
Дэвелопер
 
Аватар для mr.DIMAS
 
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений
(для 1,540 пользователей)
C\C++

Давно на булке не было хорошего срача по поводу двух родственных языков. Пора его начать.

Уже как месяц, в перерывах между рисованием моделек и карт для своей игры, пишу говношутер на чистом си. Что могу по этому поводу сказать:
1) Почувствовал себя полным нубом в программировании когда у меня отняли stl с его std::vector и std::map. Пришлось писать свои велики, проходя по граблям снова и снова.
2) Компиляция просто офигенно быстрая, сейчас проект размером 250 кб кода компилируется mingw за 5 сек, для сравнения при смене компилятора на g++( то есть си++ компилятор ) тот же проект компилируется за 23 секунды.
3) Размер кода тоже меньше раза в 3 (тут скорее линкуется рантайм c++ в экзешник, поэтому такая разница)
4) Производительность практически одинаковая( разница 1-3%) при тех же ключах оптимизатора. Но производительность неоптимизированных версий различается на 10-15%. Причем си обходит си++.
5) Так как некоторые куски кода я брал из движка своей игры, то при портировании их на си, удалось серьезно их оптимизировать.
6) Наследование сменилось композицией, в некоторых местах оно даже удобнее наследования.
7) При программинге на си стал больше уделять внимания структуре игры\движка.

В итоге не могу сказать что си прям очень сильно понравился, но он избавляет от гемора с наследованием и прочей ООП мишурой.

Кароче let the срач begins!
__________________

(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо mr.DIMAS за это полезное сообщение:
ant0N (28.02.2015), KCEPOKC (28.02.2015)