Конструирование объектно-ориентированного ПО
Мы уже давали определение конструирования ОО-ПО: будучи весьма общим, оно представляет метод следующим образом: "основывать архитектуру всякой программной системы на модулях, полученных из типов объектов, с которыми оперирует система". Придерживаясь рамок этого определения, мы можем дополнить его теперь более техническим определением:
Конструирование объектно-ориентированного ПО (определение 2)
Конструирование ОО-ПО - это построение программной системы как структурированной совокупности реализаций (возможно частичных) абстрактных типов данных.
Это определение будет нашим рабочим определением. Все его компоненты являются важными:
- В основе лежит понятие абстрактного типа данных.
- Для конструирования программ нам нужны не сами по себе АТД (как математическое понятие), а реализации АТД - программистское понятие.
- При этом эти реализации не обязаны быть полными, оговорка "возможно частичные" позволяет использовать и отложенные классы, включая, как крайний случай, полностью отложенный класс без какой-либо реализации.
- Система представляет собой совокупность классов без выделения какого-либо главного или ответственного класса или головной программы.
- Эта совокупность является структурированной благодаря двум отношениям между классами: "быть клиентом" и наследованию.
Содержание раздела