В каждый момент времени правильным является дизайн системы, в рамках которого:
1. Выполняются все тесты.
2. Нет дублирующейся логики. (Опасайтесь скрытого дублирования, например, применения параллельных иерархий классов.)
3. Выражается каждая из идей, важных для программистов.
4. Существует наименьшее возможное количество классов и методов.
Каждый фрагмент дизайна системы должен доказать свое право на существование на основании всех перечисленных правил. Эдвард Туфт (Edward Tufte) придумал упражнение для разработчиков графов – нарисуйте граф так, как хотите, затем стирайте до тех пор, пока вы не удаляете из графа полезную информацию. Если вы не можете больше продолжать стирание, значит, перед вами наиболее удачный дизайн для графа. Простой дизайн программной системы можно сформировать точно таким же образом – уберите из системы все элементы, какие вы сможете убрать, не нарушив при этом правил 1-3.
Edward Tufte, The Visual Display of Quantitative Information (Визуальное отображение численной информации), Graphics Press, 1992.
Этот совет противоположен тому, что обычно приходится слышать программистам: Реализуйте для сегодняшнего дня, а проектируйте – для завтрашнего. Однако если вы уверены, что будущее – в неопределенности, если вы верите в то, что завтра вы можете сменить направление своих мыслей и не платить за это слишком дорого, значит, включение в дизайн функциональности только на основании абстрактных размышлений – это безумство. Добавляйте в дизайн то, что вам нужно, только тогда, когда это действительно вам нужно.
Домашняя бухгалтерия от AmoSoft - – это программа для ведения домашней бухгалтерии. Программа предназначена для автоматизации учета ваших доходов и расходов. . Программа имеет простой интерфейс и не требует знаний бухгалтерского учета от пользователей.
Опубликовал Kest
July 08 2009 10:21:32 ·
1 Комментариев ·
7269 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Oleg27 October 26 2023 11:59:43
Если вам нравится футбол, как вид спорта и вы уверены в том, что сможете делать 100% прогнозы. Ну или, хоть иногда делать так, чтобы ваша ставка сыграла То конечно же ставьте. Мне больше интересен киберспорт. Когда учился в университете, то даже сам участвовал в соревнованиях по контр страйку. И, между прочим, занимал далеко не последние места. А однажды занят призовое третье место. Я ставлю через 1xbet 1xBET зеркало рабочее , а ты какую контору выбрал? Или только планируешь и определяешься?
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.