«Чистый» код, ужасная производительность
Один из наиболее часто повторяемых советов по программированию, особенно начинающим программистам, заключается в том, что они должны писать «чистый» код. Этот призыв сопровождается длинным списком правил, которые говорят вам, что вы должны сделать, чтобы ваш код был «чистым».
Большая часть этих правил фактически не влияет на время выполнения написанного вами кода. Такого рода правила не могут быть объективно оценены, да и не обязательно, потому что на данный момент они достаточно произвольны. Тем не менее, некоторые «чистые» правила кода — некоторые из наиболее подчеркнутых — являются вещами, которые мы можем объективно измерить, поскольку они действительно влияют на поведение кода во время выполнения.
Если вы посмотрите на «чистую» сводку кода и вытащите правила, которые действительно влияют на структуру вашего кода, вы получите:
- Предпочитайте полиморфизм «if/else» и «switch»
- Функции должны быть небольшими
- И т.д.
Эти правила довольно специфичны в отношении того, как должен быть создан любой конкретный фрагмент кода, чтобы он был «чистым». Я хотел бы спросить, если мы создадим фрагмент кода, который следует этим правилам, как он будет работать?
Чтобы сконструировать то, что я считаю наиболее благоприятным случаем реализации чего-либо на «чистом» коде, я использовал существующий пример кода, содержащийся в литературе по «чистому» коду. Таким образом, я ничего не придумываю, я просто оцениваю правила сторонников «чистого» кода, используя пример кода, который они приводят для иллюстрации этих правил.
продолжение в статье…
Когда мы смотрим на результаты, мы видим нечто весьма примечательное: всего одно изменение — написание кода по старинке, а не «чистый» код — дало нам немедленное увеличение производительности в 1,5 раза.
https://www.computerenhance.com/p/clean-code-horrible-performance
Многие сторонники «чистого кода» пишут ужасные чудовища из абстрагированного кода, который изначально сложно понять, сложно поддерживать и который имеет дерьмовую производительность. )
Если компилятор выдаёт ошибку, то лучше перепроверить код, патч какой-то делал для игры и утечка памяти была. Вроде гта4 или Макс Пайн 3.
Производительность это главное, имхо. Например помню лет 10 назад qip и/или Миранда несколько мб весил и мог в разные протоколы, что сейчас тг и ВЦ не могут при их размере с сотки мб