Похоже, что фраза " Преждевременная оптимизация" - это ключевое слово дня. По какой-то причине программисты iphone, в частности, думают, что избегают преждевременной оптимизации как проактивной цели, а не естественного результата, просто избегая отвлечения внимания. Проблема в том, что этот термин все чаще применяется к случаям, которые совершенно неуместны.
Например, я видел, как растущее число людей говорит, что не стоит беспокоиться о сложности алгоритма, потому что это преждевременная оптимизация (например, Помогает сортировать NSArray по двум свойствам ( с NSSortDescriptor?)). Честно говоря, я думаю, что это просто лень и ужасающая дисциплинарная компьютерная наука.
Но мне пришло в голову, что, возможно, учитывая сложность и производительность алгоритмов, это путь разворачивания цикла сборки и другие методы оптимизации, которые теперь считаются ненужными.
Как вы думаете? Разве мы находимся сейчас, когда решение между алгоритмом сложности O (n ^ n) и O (n!) Не имеет значения? Что относительно O (n) vs O (n * n)?
Что вы считаете "преждевременной оптимизацией"? Какие практические правила вы используете для осознанного или бессознательного избегания этого?
ИЗМЕНИТЬ
Я знаю, что мое описание немного общее, но меня интересуют конкретные, практические правила или лучшие практики, которые используют люди, чтобы избежать "предварительной зрелости", , особенно на iphone платформа.
Отвечая на это, вы должны сначала ответить на вопрос "что такое предварительная оптимизация?". Поскольку это определение явно сильно варьируется, любой значимый ответ требует от автора определения термина. Вот почему я действительно не думаю, что это вопрос CW. Опять же, если люди не согласны, я его изменю.