Роль алгоритмической и объектно-ориентированной декомпозиции в разработке ПО. — КиберПедия 

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Роль алгоритмической и объектно-ориентированной декомпозиции в разработке ПО.

2022-10-29 34
Роль алгоритмической и объектно-ориентированной декомпозиции в разработке ПО. 0.00 из 5.00 0 оценок
Заказать работу

Декомпозиция – разделение проблемы на части в соответствии с каким-либо критерием.

Алгоритмическая декомпозиция. Проблема разделяется на алгоритмы, где каждый модуль системы выполняет один из этапов общего процесса, соответствует структурному проектированию "сверху вниз".

Объектно-ориентированная декомпозиция. Система делится в зависимости от принадлежности ее элементов к различным абстракциям данной проблемной области. Выделяются отдельные объекты, которые обладают своим собственным поведением.

Объектная декомпозиция уменьшает размер программных систем за счет повторного использования общих механизмов, что приводит к существенной экономии выразительных средств. Объектно-ориентированные системы более гибки и проще эволюционируют со временем, потому что их схемы базируется на устойчивых промежуточных формах. Объектная декомпозиция существенно снижает риск при создании сложной программной системы, так как она развивается из меньших систем.

 

 

ООП.Характеристика объектно-ориентированных моделей.

ООП. Понятие объектной модели.

Объектная модель – это модель, основанная на следующих принципах:

- абстрагирование., т.е. объектная декомпозиция и выделение абстракций.

- инкапсуляция (ограничение доступа). Разделение класса на реализацию и интерфейс.

- модульность – принцип разработки в виде отдельных частей - модулей.

- иерархичность – принцип, когда ПО строится как совокупность элементов, образующих иерархию. Основные формы реализации – отношение композиции или агрегации и наследование.

- типизация – ограничения, накладываемые на свойства обьектов и препятствующие взаимозаменяемости абстракции различных типов. Жесткая типизация - Язык предоставляет заранее предопределенные типы с известным набором операторов. В С++ - средняя типизация.

- параллелизм – принцип, означающий свойство нескольких абстракций быть одновременно активными. Поддерживается на уровне ОС и позволяет создавать параллельные задачи (потоки).

- сохраняемость

- и т.д.

Использование объектного подхода существенно повышает уровень унификации разработки и пригодность для повторного использования не только программ, но и проектов, что в конце концов ведет к созданию среды разработки

Использование объектной модели приводит к построению систем на основе стабильных промежуточных описаний, что упрощает процесс внесения изменений. Это дает системе возможность развиваться постепенно и не приводит к полной ее переработке даже в случае существенных изменений исходных требований.

Объектный подход состоит из ряда хорошо продуманных этапов проектирования, что также уменьшает степень риска и повышает уверенность в правильности принимаемых решений.

Объектная модель ориентирована на человеческое восприятие мира.

Объектная модель состоит из статичной и динамичной. Статичная из логической(состав) и физической(динамика поведения). Статичная – модель объектов и классов. Динамическая – модель компоновки и модель развертывания. Динамическая – автоматные модели и модели взаимодействия.

 

 

ООП. Принципы абстрагирования, ограничения доступа, модульности.

Абстрагирование является одним из основных методов, используемых для решения сложных задач.Абстракция выделяет существенные характеристики некоторого объекта, отличающие его от всех других видов объектов и, таким образом, четко определяет его концептуальные границы с точки зрения наблюдателя. Абстрагирование концентрирует внимание на внешних особенностях объекта и позволяет отделить самые существенные особенности поведения от несущественных.

Ограничение доступа - сокрытие отдельных элементов реализации абстракции, не затрагивающих существенных характеристик ее как целого.

Модульность – принцип разработки программного обеспечения в виде отдельных частей (модулей).

Модульность - это свойство системы, которая была разложена на внутренне связные, но слабо связанные между собой модули.

 

 

ООП. Принцип иерархичности.

Иерархичность – принцип, когда ПО строится как совокупность элементов, образующих иерархию. Основные формы реализации – отношение композиции или агрегации и наследование.

1. использование – отношение, когда в одном классе используются члены другого класса и это используется в его методах

 

2. агрегация - Отношения, когда один класс в качестве своей составной части (в атрибутах) содержит объекты другого класса, в качестве своих атрибутов.

 

3. Наследование – механизм создания новых классов, когда новый класс использует члены исходного класса, а также, добавляет новые члены, при необходимости переописывает члены исходного класса. Переописание м.б. выполнено в виде перегрузки (сохраняется сигнатура), либо в виде подстановки или подмены (сохраняется интерфейс).


Поделиться с друзьями:

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.008 с.