> Рассуждения Учителя Foo о двух Путях
Учитель Foo рассказывал своим ученикам:
«В учении Дхарма есть направление, примером которого служит мантра патриарха McIlroy „Делай одно дело хорошо“. Это направление учит, что дух Unix есть в программе только тогда, когда поведение ее просто и последовательно, когда свойства её с готовностью воспринимаются умом пользователя и легко могут быть использованы в других программах.»
«Но есть и другое направление в учении Дхарма, примером которого служит великая мантра патриарха Thompson „Когда сомневаешься — иди напролом“, и различные сутры, говорящие о пользе получения 90% результата прямо сейчас, чем 100% позже. Учение направлено на монолитность и простоту реализации».
«Теперь скажите мне: какие программы проникнуты духом Unix?»
После некоторой паузы Нуби заметил:
«Наставник, оба эти Пути не совсем верны».
«Простота реализации влечёт за собой недостаток логики для обработки исключений, таких как нехватка ресурсов, или при невозможности взаимной блокировки, или может привести к таймауту при незаконченной транзакции».
«Когда будут выбрасываться эти исключения, работа программы станет нестабильной и сложной. Это же не дух Unix?»
Учитель согласно кивнул.
«С другой стороны, хорошо известно, что все причудливые алгоритмы ненадёжны. Каждая попытка предусмотреть исключение влечёт изменения в основных алгоритмах программы и в коде, который обрабатывает другие исключения».
«Таким образом, стремление предусмотреть все исключения, гарантирующее „простоту описания“, может на самом деле превратиться в код, который слишком сложен и хрупок, и, подверженый ошибкам — вообще никогда не доходит до релиза. Это же тоже не дух Unix?»
Учитель Foo снова кивнул.
«Какое же направление Дхарма более правильное?», спросил Нуби.
Учитель сказал:
«Летящий орёл не забывает о том, что его лапы касались земли. Нападающий тигр не забывает ощущение полета в прыжке. Самое правильное направление — килограмм хорошей архитектуры!»
И снизошло на Нуби просветление, как только он это услышал.