Книга: Основы объектно-ориентированного программирования
Объектно-ориентированное конструирование ПО
Объектно-ориентированное конструирование ПО
У нас уже накоплено достаточно оснований, чтобы попытаться определить ОО-конструирование ПО. Это будет лишь первый набросок, более конкретное определение последует в следующей лекции.
ОО-конструирование ПО (определение 1)
ОО-конструирование ПО - это метод разработки ПО, который строит архитектуру всякой программной системы на модулях, выведенных из типов объектов, с которыми система работает (а не на одной или нескольких функциях, которые она должна предоставлять).
Содержательная характеристика этого подхода может служить лозунгом ОО-проектировщика:
Объектный девиз
Не спрашивай вначале, что система делает.
Спроси, кто в системе это делает!
Чтобы получить работающую реализацию, вам придется рано или поздно узнать, что она делает. Отсюда слово вначале. ОО-мудрость говорит, что узнать, что делается лучше позже, чем раньше. При этом подходе выбор главной функции является одним из последних шагов в процессе конструирования системы.
Вместо поиска самой верхней функции системы будут анализироваться типы входящих в нее объектов. Проектирование системы будет продвигаться вперед путем последовательного улучшения понимания классов этих объектов. Это процесс построения снизу вверх устойчивых и расширяемых решений для отдельных частей задачи и сборки из них все более и более мощных блоков до тех пор, пока не будет получен окончательный блок, доставляющий решение первоначальной задачи. При этом можно надеяться, что оно не является единственно возможным: если правильно применять метод, то те же компоненты, собранные по-другому и, возможно, объединенные с другими, окажутся достаточно общими, чтобы получить в качестве побочного продукта также и решения каких-то новых задач.
Для многих разработчиков программ такое изменение точки зрения является настолько же шокирующим, насколько шокирующей в далекие времена могла быть для многих мысль о том, что земля вращается вокруг солнца, а не наоборот. Это также противоречит многому в сложившейся практике разработки программного обеспечения, которая стремится представить построение системы как выполнение системной функции, представленной в подробном, привязанном к требованиям документе. Тем не менее, эта простая идея - вначале рассматривать данные, забыв о непосредственной цели системы, - может послужить ключом к повторному использованию и расширяемости.
- Конструирование объектно-ориентированного ПО
- 1.1. Введение в объектно-ориентированное программирование
- Конструирование нейронных сетей
- Лекция 8. Основы объектно-ориентированного программирования
- 2. Лекция: Основы объектно-ориентированного программирования
- Знакомство с объектной моделью Excel
- Просмотр XML-файла с помощью объектной модели Internet Explorer 4.0
- Описание объектной модели
- Лабораторная работа № 4 Генерация и оптимизация объектного кода
- Объектно-ориентированное программирование в Python
- ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ НА JAVA 7. КЛАССЫ
- Конструирование модулей