Способ мышления-Форт



         

Девять фаз цикла программирования - часть 25


Видимо, их авторы чрезмерно обобщили задачу. Они решили большую задачу, подмножество в которой составляют их собственные нужды. Они пренебрегли принципом того, что решение должно отвечать задаче.

----------------------------------------------------------------

------------------------------------------------------------ СОВЕТ Обобщенность обычно приводит к сложности. Не обобщайте свое решение более, чем это необходимо; вместо этого предусматривайте возможность изменения. ------------------------------------------------------------

----------------------------------------------------------------

Мур продолжает:

Если перед Вами поставлена задача, Вы можете написать ее решение. После того, как Вы это сделали и обнаружили в нем некоторые неприятности, можете вернуться назад и изменить задачу, получив в конце концов более простое решение.

Существует такой вид оптимизации устройств - минимизация числа вентилей в схеме, где можно использовать преимущества "безразличных" ситуаций. Они возникают или вследствие того, что данный случай на практике не встретится, или потому что действительно все равно. Однако исходные данные зачастую пишутся людьми, ничего не понимающими в программировании. Разработчик может аккуратно описать все случаи, но при этом не сказать Вам, программисту, какие из них действительно важны.

Если Вы вольны вернуться назад и поспорить с ним и использовать преимущества "безразличных" случаев, то можете получить более простое решение.

Возьмем инженерное приложение, такое, как 75-тонный пресс, работающий с металлическим порошком и выдавливающий разные штуки. Некто желает установить компьютер для управления клапанами в тех местах, где сейчас применяется гидравлическое управление. Какого типа спецификацию получите Вы от инженера? Наиболее вероятно, что датчики были расположены с точки зрения электомеханических удобств. Теперь же их могли расположить где-нибудь еще, но где - инженер позабыл. Если Вам хочется получить объяснения, то Вы должны приблизиться к реальному миру и удалиться от их модели этого мира.




Содержание  Назад  Вперед