Объектно-ориентированное проектирование и программирование/Основы объектно-ориентированного проектирования
Рассматриваются основные термины объектно-ориентированного проектирования[1].
Декомпозиция
правитьРоль декомпозиции — при проектировании сложной программной системы необходимо разделять ее на все меньшие и меньшие подсистемы, каждую из которых можно совершенствовать независимо. В этом случае мы не превысим пропускной способности человеческого мозга: для понимания любого уровня системы нам необходимо одновременно держать в уме информацию лишь о немногих ее частях, а не обо всех.
Алгоритмическая декомпозиция — разделение системы, путем разделения алгоритмов, где каждый модуль системы выполняет один из этапов общего процесса.
Объектно-ориентированная декомпозиция — разделение системы, выбрав в качестве критерия декомпозиции принадлежность ее элементов к различным абстракциям данной проблемной области. Абстракции описываются в виде объектов. Тогда каждый объект обладает своим собственным поведением, и каждый из них моделирует некоторый объект реального мира. С этой точки зрения объект является вполне осязаемой вещью, которая демонстрирует вполне определенное поведение. Объекты что-то делают, и мы можем, послав им сообщение, попросить их выполнить то-то и то-то.
Объект и класс
правитьОбъект обладает состоянием, поведением и идентичностью; структура и поведение схожих объектов определяет общий для них класс; термины "экземпляр класса" и "объект" взаимозаменяемы.
- Состояние объекта характеризуется перечнем всех свойств данного объекта и текущими значениями каждого из них.
- Поведение объекта - это то, как объект действует и реагирует; поведение выражается в терминах состояния объекта и передачи сообщений.
- Идентичность объекта - это такое свойство объекта, которое отличает его от всех других объектов.
Класс - это множество объектов, имеющих общую структуру и общее поведение.
Отношения между классами
править- Ассоциация
- Наследование
- Агрегация
- Использование
- Инстанцирование
Примечания
править- ↑ Даны по Гради Буч