Разве авторы Прагматического Программиста забыли о YAGNI?
Прагматичный программист настоятельно рекомендуется многими людьми. Я только что закончил читать, и я могу понять, почему люди рекомендуют это, хотя я хотел бы отметить, что Code Complete охватывает почти все те же материалы гораздо глубже.
Однако одна вещь, которая меня беспокоила, это то, что авторы никогда не упоминали о каких-либо недостатках гибкости, обобщения и оставления места для будущего развития. Все эти концепции очень хороши, но что случилось с принципом YAGNI (вам это не нужно), который мешает разработчикам тратить свое время на реализацию гибкости, которая никогда не будет использоваться?
Поиск SO показывает 400 вопросов о YAGNI, поэтому я сомневаюсь, что концепция была слишком непонятной для авторов. Я, конечно, далеко не так опытен, как они, так почему они не упоминали о каком-либо применении сдержанности в книге?
Благодарю.
3 ответа
Они не называют это YAGNI, но на странице 11 есть ключевое слово, которое имеет по крайней мере тот же фокус:
Знайте, когда остановиться!
Они не забыли. Я думаю, что книга предшествует тому, как ЯГНИ станет известным.
[YAGNI] не позволяет разработчикам тратить свое время на реализацию гибкости, которая никогда не будет использоваться
Реализация гибкости не обязательно займет больше времени. По моему опыту, это то, что может (и должно) быть частью вашего естественного стиля программирования. Код IMHO, который является негибким, как правило, из-за плохой практики программирования.