Вверх ↑
Ответов: 9906
Рейтинг: 351
#1: 2014-06-25 18:21:41 ЛС | профиль | цитата
Assasin писал(а):
Так обычно все разборки решаются написанием комментариев, поясняющих, что делает такая-то функция.

Вот опять ты не понял
Да могу я сам разобраться.
И ошибку исправить, коль скоро таковая приключится.

НЕ В ЭТОМ ДЕЛО.
А в том, что парадигма разработки неправильная.
Не сейчас надо сравнивать, кто кого быстрее. Это предмет научных изысканий, а не инженерной разработки.
Правильная (и я об этом уже писал), это ДО кодинга провести предварительный анализ направлений разработки.
На предмет соответствия конечной цели. В условиях наличия совершенно конкретных инструментов.
Обязательно нескольких. Например классовое/бесклассовое.
В качестве целей - эффективность в Run-Time (конечно же, в сравнении с интерфейсной эффективностью), и Понятность кодов (ибо работа Инженера, коллективная - по определению).
Плюс к этому утверждаю, что это не трудно. Если работать в правильной последовательности.
И не больно

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

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


------------ Дoбавленo в 18.21:
Assasin писал(а):
По результатам тестов кстати получилось, что бесклассовый вариант работает быстрее где-то в 2 раза.

Странно Вы измеряете, однако
Вот я сказал - в пять раз.
Взял этот код
Эту схему.
Получил такие результаты
minitestgood.png
Взял код из стартового поста, и на той же схеме, получил такие разультаты
minitestbad.png
Ну где тут "в два раза"

На первом скрине "собственное время" составляет ~1.8мс
А на втором -- ~8.5мс

"Собственное время" -- это время на вычисление дополнительного (относительно мухобойного) кода:
+ 1/(%1+%2) + 1/(1+%1+%2) + 1/(2+%1+%2) + 1/(3+%1+%2) + 1/(4+%1+%2) + 1/(5+%1+%2) + 1/(6+%1+%2) + 1/(7+%1+%2) + 1/(8+%1+%2) + 1/(9+%1+%2)
карма: 9

0
файлы: 2minitestgood.png [7.3KB] [606], minitestbad.png [7.3KB] [622]