Бьерн Страуструп - Язык программирования С++. Главы 11-13
Страница 21. Свод правил



11.5 Свод правил

В этой главе мы затронули много тем, но как правило не давали
настоятельных и конкретных рекомендаций по проектированию. Это
соответствует моему убеждению, что нет "единственно верного решения".
Принципы и приемы следует применять тем способом, который лучше
подходит для конкретных задач. Для этого нужен вкус, опыт и разум.
Все-таки можно указать некоторый свод правил, который разработчик
может использовать в качестве ориентиров, пока не наберется достаточно
опыта, чтобы выработать лучшие. Ниже приведен свод таких правил.
     Эти правила можно использовать в качестве отправной точки в
процессе выработки основных направлений для проекта или организации
или в качестве проверочного списка. Подчеркну еще раз, что они не
являются универсальными правилами и не могут заменить размышления.
   - Узнайте, что вам предстоит создать.
   - Ставьте определенные и осязаемые цели.
   - Не пытайтесь с помощью технических приемов решить социальные
     проблемы.
   - Рассчитывайте на большой срок
     - в проектировании, и
     - управлении людьми.
   - Используйте существующие системы в качестве моделей, источника
     вдохновения и отправной точки.
   - Проектируйте в расчете на изменения:
     - гибкость,
     - расширяемость,
     - переносимость, и
     - повторное использование.
   - Документируйте, предлагайте и поддерживайте повторно используемые
     компоненты.
   - Поощряйте и вознаграждайте повторное использование
     - проектов,
     - библиотек, и
     - классов.
   - Сосредоточьтесь на проектировании компоненты.
     - Используйте классы для представления понятий.
     - Определяйте интерфейсы так, чтобы сделать открытым минимальный
       объем информации, требуемой для интерфейса.
     - Проводите строгую типизацию интерфейсов всегда, когда это
       возможно.
     - Используйте в интерфейсах типы из области приложения всегда,
       когда это возможно.
   - Многократно исследуйте и уточняйте как проект, так и реализацию.
   - Используйте лучшие доступные средства для проверки и анализа
     - проекта, и
     - реализации.
   - Экспериментируйте, анализируйте и проводите тестирование на
     самом раннем возможном этапе.
   - Стремитесь к простоте, максимальной простоте, но не сверх того.
   - Не разрастайтесь, не добавляйте возможности "на всякий случай".
   - Не забывайте об эффективности.
   - Сохраняйте уровень формализации, соответствующим размеру проекта.
   - Не забывайте, что разработчики, программисты и даже менеджеры
     остаются людьми.
Еще некоторые правила можно найти в $$12.5

 
« Предыдущая статья   Следующая статья »