среда, 25 апреля 2012 г.

Принципы проектирования ПО

Буду составлять список принципов проектирования с которыми где-либо встречаюсь. Они могут быть из книг, статей или еще от куда-нибудь. По мере возможностей буду указывать источник, чтобы в случае чего можно было бы перечитать и почерпнуть еще идеи.
  1. Выделите аспекты приложения, которые могут изменяться, и отделите их от тех, которые всегда остаются постоянными. - Фримен "Паттерны проектирования", стр. 45
  2. Программируйте на уровне интерфейса, а не на уровне реализации.   - Фримен "Паттерны проектирования", стр. 47
  3. Отдавайте предпочтение композиции перед наследованием. - Фримен "Паттерны проектирования", стр. 59
  4. Стремитесь к слабой связности взаимодействующих объектов. - Фримен "Паттерны проектирования", стр. 87
  5. Классы должны быть открыт для расширения, но закрыты для изменения. - Фримен "Паттерны проектирования", стр. 118
  6. Код должен зависеть от абстракций, а не от конкретных классов. - Фримен "Паттерны проектирования", стр. 171
  7. Принцип минимальной информированности: общайтесь только с близкими друзьями. - Фримен "Паттерны проектирования", стр. 291
  8. "Голливудский" принцип: Не вызывайте нас - мы Вас сами вызовем.  - Фримен "Паттерны проектирования", стр. 320
  9. Принцип одной обязанности. Класс должен иметь только одну причину для изменения. Фримен "Паттерны проектирования", стр. 361

Комментариев нет: