Бьерн Страуструп. Язык программирования С++ Второе дополненное издание



Pdf көрінісі
бет237/256
Дата11.07.2022
өлшемі2,87 Mb.
#37591
1   ...   233   234   235   236   237   238   239   240   ...   256
12.5 Свод правил 
В этой главе мы коснулись многих тем, но, как правило, избегали давать настоятельные и конкретные 
рекомендации по рассматриваемым вопросам. Это отвечает моему убеждению, что нет "единственно 
верного решения". Принципы и приемы следует применять способом, наиболее подходящим для 
конкретной задачи. Здесь требуются вкус, опыт и разум. Тем не менее, можно предложить свод правил, 
которые разработчик может использовать в качестве ориентиров, пока не приобретет достаточно 
опыта, чтобы выработать лучшие. Этот свод правил приводится ниже. 
Он может служить отправной точкой в процессе выработки основных направлений проекта конкретной 
задачи, или же он может использоваться организацией в качестве проверочного списка. Подчеркну еще 
раз, что эти правила не являются универсальными и не могут заменить собой размышления. 
• Нацеливайте пользователя на применение абстракции данных и объектно-ориентированного 
программирования. 

Постепенно переходите на новые методы, не спешите. 

Используйте возможности С++ и методы объектно-ориентированного программирования 
только по мере надобности. 
• Добейтесь соответствия стиля проекта и программы. 
• Концентрируйте внимание на проектировании компонента. 
• Используйте классы для представления понятий. 

Используйте общее наследование для представления отношений "есть". 

Используйте принадлежность для представления отношений "имеет". 

Убедитесь, что отношения использования понятны, не образуют циклов, и что число их 
минимально. 

Активно ищите общность среди понятий области приложения и реализации, и возникающие в 
результате более общие понятия представляйте как базовые классы
Определяйте интерфейс так, чтобы открывать минимальное количество требуемой информации: 

Используйте, всюду где это можно, частные данные и функции-члены. 

Используйте описания public или protected, чтобы отличить запросы разработчика 
производных классов от запросов обычных пользователей. 

Сведите к минимуму зависимости одного интерфейса от других. 

Поддерживайте строгую типизацию интерфейсов. 

Задавайте интерфейсы в терминах типов из области приложения. 
Дополнительные правила можно найти $$11.5. 


Бьерн Страуструп.
Язык программирования С++ 
 
335 


Достарыңызбен бөлісу:
1   ...   233   234   235   236   237   238   239   240   ...   256




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет