Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по инф-ке.docx
Скачиваний:
8
Добавлен:
27.10.2018
Размер:
160.25 Кб
Скачать

3. Оо анализ, проект-ие и программ-е.

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

В результате ОО анализа строится концептуальная база — объектная модель, кот. включает в себя 4 гл. эл-та:

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

  2. Инкапсуляция - это процесс отделения др.от др. эл-ов объекта, определ. его устр-во и поведение.

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

  4. Иерархия - это упорядочение абстракций, расположение их по уровням.

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

  1. Типизация - это способ защититься от исп-я объектов одного класса вместо другого.

  2. Параллелизм - это св-во, отличающее активные объекты от пассивных.

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

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

  • осязаемый и (или) видимый предмет;

  • нечто, воспринимаемое мышлением;

  • нечто, на что направлена мысль или действие.

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

Моделирование в процессе ОО анализа позв-ет решить 4 задачи:

  • визуализировать систему в ее текущем состоянии;

  • определить структуру или поведение системы;

  • получить шаблон, позв-щий сконструировать систему;

  • документировать приним. решения, используя плуч.модели.

Осн. принципы моделир.:

  1. Выбор модели оказ-ет определ-щее влияние на подход к реш-ю проблемы и на то, как будет выглядеть это реш-е.

  2. Кажд модель м.б. воплощ. с разн. степ-ю абстракции.

  3. Лучшие модели — те, что ближе к реальности.

  4. Нельзя огранич-ся созд-ем только 1 модели. Наил. подход при разраб-ке любой нетрив. системы — исп-ть совокупность неск. моделей, почти независимых др. от др.

Осн. идеи ОО подхода опир-ся на след. полож.:

  • Программа - модель реал. процесса, части реал. мира.

  • Модель реал. мира или его части м.б. описана как сов-сть взаимодействующих между собой объектов.

  • Объект опис-ся набором параметров, знач-я кот. опред-ют сост-е объекта, и набором действий, кот. м. вып-ть объект.

  • Взаимод-е м/у объектами осущ-ся посылкой спец. сообщений от 1 объекта к др.

  • Объекты, описанные одним и тем же набором параметров и способные выполнять один и тот же набор действий предст-ют собой класс однотипных объектов.

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

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

ОО декомпозиция отличает ОО проектирование от структурного; в 1 случае логич. структура системы отраж-ся абстракциями в виде классов и объектов, во 2 - алгоритмами.

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

Техн-я ООП осн-на на 3 основополагающих концепциях:

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

Наследование - это процесс, посредством которого, один объект может приобретать св-ва др. Точнее, объект может наследовать св-ва др. объекта и добавлять к ним черты, хар-ные только для него.

Полиморфизм - это св-во, кот. позв-ет одно и тоже имя исп-ть для реш-я неск. технически разных задач.

В этом опр-ии м. выделить 3 части: 1) OOП исп-ет в качестве базовых эл-ов объекты, а не алгоритмы; 2) кажд объект явл-ся экземпляром к.-либо опред. класса; 3) классы организованы иерархически. Прогр-ма б. ОО только при соблюдении всех трех указ. треб-ий. В частности, програм-е, не основанное на иерарх. отнош-ях, не относится к OOП, а наз-ся программ-ем на основе абстракт. типов данных.