Войти
ПрограммированиеФорумОбщее

Парадигмы эффективно снижающие сложность кода... (3 стр)

Страницы: 1 2 3 4 514 Следующая »
#30
12:13, 25 апр. 2012

Dimich
нет
ибо
if (textures[filename])
    return textures[filename];
2 поиска вместо одного
создание элемента по умолчанию если его нет
используй find и insert


#31
12:17, 25 апр. 2012

kvakvs
> Не используй класс там, где можно обойтись структурой.
класс это и есть структура ;)
kvakvs
> Не используй вектор там, где можно обойтись сишным массивом.
Вектор он, каг бэ, с ассертами...

Pushkoff
> используй const везде где это возможно
+1, становись конст нази!

#32
12:19, 25 апр. 2012

laMer007
> Таки сколько ошибок вы заметили в коде за всю свою карьеру благодаря
> модификатору const?
не много, но заметил что часто оптимизатор генерит более качественный код

laMer007
> Pushkoff тоже скоро уйдет в функциональщики...
я давно не признаю ООП

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

#33
12:24, 25 апр. 2012

Pushkoff
> используй find и insert
> 2 поиска вместо одного
Я уже написал выше что можно использовать только 1 insert причём
без find вообще, такой хитрый insert есть в стандартной мапе, он сразу
создаст новый элемент если в мапе его ещё нет и возвращает итератор
на новый или найденный старый, а также флаг, был ли там такой элемент
или нет, т.е. получаем всего 1 поиск (внутри insert'а) в любом из случаев.

#34
12:46, 25 апр. 2012

Pushkoff
> не много, но заметил что часто оптимизатор генерит более качественный код
Вам показалось

#35
12:48, 25 апр. 2012

Pushkoff
> я давно не признаю ООП

троллишь ?

#36
12:52, 25 апр. 2012

так помогает ли 'const' генерации более оптимального кода?
а то в большинстве статей утверждается, что нет, он помогает только ловить ошибки.
Здесь про 'const' : http://tfpsly.free.fr/english/3d/code.html#Vector and matrix classes, math operators.

but, remember, const is a virus:
http://c2.com/cgi/wiki?ConstIsaVirus

так ведь не рекомендуется использовать оператор [] с мэпой и для поиска, и для вставки?

edit: corrected links

#37
12:56, 25 апр. 2012

Pushkoff
> const
> заметил что часто оптимизатор генерит более качественный код
Я слышал обратное утверждение. (Это относиться только к крестам с его копированием по значению (некоторые объекты модифицировать дешевле, чем скопировать из-за их размера)). Также в каких-то случаях RVO\NRVO из-за const слышал не срабатывало.

#38
13:02, 25 апр. 2012

PVSector
> Здесь про 'const' : http://tfpsly.free.fr/english/3d/code.html#Vector.
ткни носом, а то чтото ничего не нашел про конст модификаторы

#39
14:09, 25 апр. 2012

IROV..
да, извините.
тут в поддержку товарища Пушкова:
http://tfpsly.free.fr/english/3d/code.html#Vector and matrix classes, math operators

помнится, была какая-то gotcha про константные ссылки и RVO.

#40
14:17, 25 апр. 2012

PVSector
было бы шикарно если бы они обяснили почему так произошло? может это баг компилятора? (оптимизация за счет семантики)

#41
14:30, 25 апр. 2012

kvakvs
> Не используй вектор там, где можно обойтись сишным массивом.

Опаньки!

Совет от меня, вернее не от меня, я просто повторюсь: ПИШИ КОД БЛЕАТЬ, всё равно умные парадигмы тебе не помогут, пока сам до них не дойдёшь с полным пониманием, зачем они нужны. Только потратишь время зря на освоение парадигм, как сложить 2+2 в ООП-стиле, за это время ты бы уже успел написать основы движка.
И да, если вы думаете, что я призываю к быдлокоду, то нифига, чем больше человек будет писать кода блеать, тем быстрее его код будет становиться чище.

#42
14:32, 25 апр. 2012

.newbprofi2
> Раньше, когда я только начинал программировать я вообще не задумывался ни о
> стиле, ни о читаемости, ни об архитектуре кода и что самое удивительное я
> всегда доделывал программу до рабочего состояния за короткий срок и даже не
> возникало никаких проблем.
newbprofi2
> Короче в итоге от того человека, который мог написать без труда рабочую, хоть и
> говнокодом программу, практически ничего не осталось. Завершить программы
> теперь вообще не удавалось, да не то что завершить, а сделать хотябы 10%...

Вот о чём я и говорю.

#43
14:40, 25 апр. 2012

Ещё от меня: при отладке программы выключай оптимизацию и включай все проверки, доступные в компиляторе и библиотеке!

#44
14:44, 25 апр. 2012

TarasB
Это этапы эволюции, спираль - это нормально
Есть сильные которые идут дальше, есть слабые которые боятся

Страницы: 1 2 3 4 514 Следующая »
ПрограммированиеФорумОбщее

Тема в архиве.