Принципы объектно-ориентированного представления программных систем
Творческая работа, 05 Сентября 2011, автор: пользователь скрыл имя
Описание работы
Создавая понятие в интересах какой-либо задачи, мы отвлекаемся (абстрагируемся) от несущественных характеристик конкретных объектов, определяя только существенные характеристики
Работа содержит 1 файл
Принципы объектно-ориентированного представления программных систем.ppt
— 155.50 Кб (Скачать)Принципы объектно-ориентирован
Абстрагирование
- Создавая понятие в интересах к
акой -либо задачи, мы отвлекаемся (абстрагируемся) от несущественных характеристик конкретных объектов, определяя только существенныехарактеристики
- Абстрагирование сводится к фор
мированию абстракций. Каждая абстракция фиксирует основные характеристики объекта, которые отличают его от других видов объектов и обеспечивают ясные понятийные границы. - Абстракция концентрирует внимание на внешнем представлении объекта, позволяет отделить основное в поведении объекта от его реализации. Абстракцию удобно строить путем выделения обязанностей объекта.
Инкапсуляция
- Инкапсуляция и абстракция — вз
аимодополняющие понятия: абстракция выделяет внешнее поведение объекта, а инкапсуляция содержит и скрывает реализацию, которая обеспечивает это поведение . Инкапсуляция достигается с помощью информационной закрытости. Обычно скрываются структура объектов и реализация их методов. - Инкапсуляция является процессом разделения элементов абстракции на секции с различной видимостью. Инкапсуляция служит для отделения интерфейса абстракции от ее реализации.
Модульность
- В языках
C++, Object Pascal абстракции классов и объектов
формируют логическую структуру системы. При производстве физической структуры эти абстракции помещаются в модули. - В больших системах, где классов сотни, модули помогают управлять сложностью. Модули служат физическими контейнерами, в которых объявляются классы и объекты логической разработки.
- Модульность определяет способность системы подвергаться декомпозиции на ряд сильно связанных и слабо сцепленных модулей.
- Общая цель декомпозиции на мод
ули : уменьшение сроков разработки и стоимости ПС за счет выделения модулей, которые проектируются и изменяются независимо. Каждая модульная структура должна быть достаточно простой, чтобы быть полностью понятой. Изменение реализации модулей должно проводиться без знания реализации других модулей и без влияния на их поведение. - Определение классов и объектов выполняется в ходе логической разработки, а определение модулей — в ходе физической разработки системы. Эти действия сильно взаимосвязаны, осуществляются итеративно.
Иерархическая организация
- Прекрасным дополнением к этим
механизмам является иерархическая организация — формирование из абстракций иерархической структуры . Определением иерархии в проекте упрощаются понимание проблем заказчика и их реализация — сложная система становится обозримой человеком. - Иерархическая организация задает размещение абстракций на различных уровнях описания системы.
- Двумя важными инструментами ие
рархической организации в объектно -ориентированных системахявляются : - структура из классов («is a»-иерархия);
- структура из объектов («part of»-иерархия).
- Чаще всего «is а»-иерархическая структура строится с помощью наследования. Наследование определяет отношение между классами, где класс разделяет структуру или поведение, определенные в одном другом (единичное наследование) или в нескольких других (множественное наследование) классах.