Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Модуль-1-шпора-ТРПО.doc
Скачиваний:
65
Добавлен:
21.03.2015
Размер:
2.59 Mб
Скачать

1.6. Пути ограничения сложности

Способ управления сложными системами был известен еще в древности – «разделяй и властвуй». Поэтому первый способ преодоления сложности ПО – декомпозиция.

При проектировании сложной программной системы необходимо составить ее из небольших подсистем, каждую из которых можно отладить независимо от других.

Существует 2 способа декомпозиции: алгоритмическая декомпозиция и объектно-ориентированная декомпозиция.

Алгоритмическая декомпозиция (АД) использует структурное проектирование по методу сверху-вниз. Алгоритм разделяется на части (модули), каждая из которых выполняет один из этапов общего процесса.

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

Оба подхода – АД и ООД решают одну и ту же задачу, но разными способами.

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

Для ограничения сложности системы так же используются абстракции и иерархический подход.

1.7. Основные положения объектной модели

Рассмотрим 3 компонента ОО подхода:

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

Здесь можно выделить 3 части:

  • в качестве базовых элементов используются объекты, а не алгоритмы;

  • каждый объект является экземпляром какого- то определенного класса;

  • классы организованы иерархически.

Программам будет объектно-ориентированной только при соблюдении всех 3 требований.

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

Здесь содержатся 2 важные части:

  • ОО проектирование основывается на объектно-ориентированной декомпозиции;

  • Многообразие приемов представления моделей.

3 - ОО анализ – это методология, при которой требования к системе воспринимаются с точки зрения классов и объектов, выявленных в предметной области. ООА направлен на создание моделей реальной действительности с использованием ОО подхода.

Соотношения между ОО программированием, ОО проектированием и ООА: по результатам ООА формируются модели, на которых основывается ОО проектирование, которое в свою очередь создает фундамент для окончательной реализации системы с использованием методологии ОО программирования.

Для объектно-ориентированного стиля программирования концептуальной базой является объектная модель. Она имеет 4 главных элемента:

  1. абстрагирование;

  2. инкапсуляция (ограничение доступа);

  3. модульность;

  4. иерархия.

Эти элементы являются главными, т.к. без любого из этих элементов модель не будет объектно-ориентированной. Кроме главных, есть еще 3 дополнительных элемента:

  1. типизация;

  2. параллелизм;

  3. сохраняемость.

Рассмотрим эти элементы.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]