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