Типичные черты исследовательского проекта




Скачать 381.19 Kb.
НазваниеТипичные черты исследовательского проекта
страница5/7
Дата публикации14.05.2014
Размер381.19 Kb.
ТипЛитература
literature-edu.ru > Лекции > Литература
1   2   3   4   5   6   7

Языки программирования


ОО методологию поддерживают такие языки как С++, Java, Pascal with Objects, Eiffel, Smalltalk, CLOS, C#.

Ключевые свойства ОО языков:

  1. Классы.

  2. Защищенные (private) поля.

  3. Наследование.

  4. Виртуальные методы.

Связывание (метода) – процесс определения, какой метод будет вызван. Разделяют раннее связывание (связывание времени компиляции) и позднее связывание (времени выполнения).

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

Чем хорош ООП?


  1. ОО описание системы акцентирует внимание на субъектах. Что приближает его к описанию на естественном языке. Любое действие (сказуемое) имеет явного или неявного субъекта (действующее лицо).

  2. Динамическая и статическая проекции системы явно связаны через понятие объекта.

  3. Присутствует контроль целостности потоков данных. Все потоки данных оперируют объектами.

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

ОО Анализ


ОО Анализ - Построение объектной модели предметной области и требований к системе.

Предметная область


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

Модель предметной области будет являться составной частью системы. Например, система исчисления предикатов обязательно будет содержать класс Предикат.

Исходные данные для анализа


  • Описание требований к системе на естественном языке.

  • Спецификации интерфейса других систем с аналогичными функциями.

Результат анализа


Модель системы на языке программирования описывающая ее взаимодействие с внешним миром.

Виды деятельности при анализе


  1. Идентификация Объектов и Классов

  2. Идентификация Структур

  3. Идентификация Доменов

  4. Определение Атрибутов

  5. Определение Сервисов

Все эти виды деятельности выполняются параллельно.

Идентификация Объектов и Классов


Зародышами объектов и классов являются существительные из описания предметной области.

Для каждого из существительных следует задать несколько вопросов.

  1. Имеет ли данная сущность состояние? Должна ли система помнить, что-либо о внутренних данных сущности.

  2. Имеет ли сущность поведение? Взаимодействует ли она с другими сущностями.

  3. Отличается ли ее поведение от поведения простого объединения ее частей?

  4. Можно ли представить сущность глобально (в пределах вселенной) уникальной?

Если на все эти вопросы ответ утвердительный, то сущность является объектом (см. определение).

Если ответ утвердительный на все вопросы кроме 4, то это класс.

Класс должен обладать уникальным именем внутри системы, точно характеризующим его назначение.

Для каждого объекта следует найти уникальный первичный класс. То есть класс, принадлежность к которому полностью определяет поведение данного объекта.

Для каждого класса следует найти или придумать пример экземпляра этого класса.

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

Если два класса имеют общее подмножество поведения, то следует рассмотреть отдельный класс, все объекты которого обладают этим поведением.

Классы, содержащие ровно один объект, возможны, но подозрительны.

Идентификация структур


После предыдущего шага у нас может образоваться множество объектов и классов. Данный шаг требуется для упорядочивания этого множества.

Рассматриваются два вида структуры: Целое-Часть и Обобщение-Уточнение.

Обобщение-Уточнение.


Для каждой пары классов зададим вопрос, является ли Класс-1 подклассом Класса-2? Класс может быть подклассом нескольких других классов.

Если ответ положительный, то эти классы связаны отношением наследования.

Целое-Часть


Для каждого Объекта зададим вопросы:

  1. Является ли он частью другого объекта?

  2. Имеет ли он другие объекты как компоненты?

Если ответ положительный, то объекты связаны отношением агрегации (включения). Это отношение индуцирует связь классов.

Объект может иметь только одного владельца в каждый момент времени.

  1. Владелец – обычно тот, кто управляет временем жизни объекта: запрашивает его создание и завершает его существование.

  2. Обычно существует состояние агрегата, нарушающее условие правильности владельца.

  3. Отсутствие агрегата обычно нарушает условие правильности владельца.

Идентификация доменов


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

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

Хорошими кандидатами в домены являются отдельные деревья владения или отдельные деревья наследования.

Определение атрибутов


Атрибут I (Поле) – элемент внутренней структуры данных класса.

Атрибут II (Свойство) – непосредственно наблюдаемое свойство объекта. Существует сервис, возвращающий значение этого свойства.

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

Источники Атрибутов.


  1. Агрегаты. Каждому агрегату объекта в разбиении Целое-Часть соответствует атрибут, хранящий этот агрегат.

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

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

Связывание Атрибутов с Классами.


Следует проталкивать атрибут вверх по графу наследования, пока он применим ко всем объектам данного класса.

Определение сервисов


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

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

Сервис должен обладать уникальным именем внутри Класса, точно характеризующим его назначение.

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

Сервисы и Классы


Сервисы являются частью поведения объекта и определяются Классом объекта. Следует проталкивать сервис вверх по графу наследования, пока он применим ко всем объектам класса.

Часто встречающиеся алгоритмически простые сервисы


  1. Создание объекта.

  2. Связывание объектов. Объединение объектов в динамическую структуру.

  3. Чтение и установка атрибутов объекта.

  4. Разрушение объекта.
1   2   3   4   5   6   7

Похожие:

Типичные черты исследовательского проекта iconКонспект внеклассного мероприятия «Подготовка к созданию учебного...
Конспект внеклассного мероприятия Подготовка к созданию учебного исследовательского проекта

Типичные черты исследовательского проекта iconСценарий проекта Полное название проекта «Солнце Русской поэзии»
Участники проекта – воспитанники, воспитатель, музыкальный родители

Типичные черты исследовательского проекта iconОтче т
Южного филиала федерального государственного бюджетного научно-исследовательского учреждения

Типичные черты исследовательского проекта iconОтче т
Южного филиала федерального государственного бюджетного научно-исследовательского учреждения

Типичные черты исследовательского проекта iconВладимир Исаевич Круковер 300 практических советов владельцам собак. Типичные ошибки

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

Типичные черты исследовательского проекта iconЧерты развития русской литературы XVIII века. Классицизм в русском и мировом искусстве
Цель – общий обзор «Черты развития русской литературы XVIII века», введение понятия «классицизм»

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

Типичные черты исследовательского проекта iconПлан мероприятий в рамках проекта «Этот загадочный Шерлок Холмс»
Составление учителями визитки проекта, методических и дидактических материалов к проекту и размещение их на школьном сайте

Типичные черты исследовательского проекта iconОтдела образования Администрации Макушинского района о реализации...
Од, о реализации проекта «Интеллектуал Зауралья» в образовательных учреждениях района. Был заслушан отчёт директора Макушинской сош...

Литература


При копировании материала укажите ссылку © 2015
контакты
literature-edu.ru
Поиск на сайте

Главная страница  Литература  Доклады  Рефераты  Курсовая работа  Лекции