Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемВероника Полуешкина
1 В. И. Дихтяр ИНФОРМАТИКА Российский университет дружбы народов Институт гостиничного бизнеса и туризма Раздел 3Моделирование объектов и процессов и его программное обеспечение Тема 3.5.Объектно-ориентированный подход Москва 2014
2 35 ( Ô ҧ )_Iq Базовые понятия Объект Ô свойство Ô метод обработки событие класс Ô Ô совокупность свойств определенных сущностей и методов их обработки ( ҧ -средств). Свойство характеристика (параметр) Ô. {Ô }наделены определенными свойствами, которые в совокупности выделяют Ô из множества других Ô.
3 35 ( Ô ҧ )_Iq Пример Ô : перечисление свойств: ОБЪЕКТ_А (свойство-1, свойство-2, …,свойство-k). Свойства Ô различных классов могут "пересекаться возможны Ô, обладающие одинаковыми свойствами: ОБЪЕКТ_В (...свойство-n, свойство-m,...свойство-r,...) ОБЪЕКТ_С (...свойство-n,…, свойство-r,...).
4 35 ( Ô ҧ )_Iq Cвязь основных понятий объектно- ориентированного программирования
5 35 ( Ô ҧ )_Iq МЕТОДИКА ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПРОЕКТИРОВАНИЯ Объектно-ориентированные τ и методики проектирования ҧ - продуктов (обеспечение выполнения принципов Ô-подхода): инкапсуляция (замыкание) свойств Ď и ҧ в Ô; наследование; полиморфизм Инкапсуляция = сочетание ŜĎ с методами их обработки в абстрактных типах Ď-классах Ô Полиморфизм способность Ô реагировать на запрос сообразно своему типу (одно и то же имя метода может использоваться для различных классов Ô)
6 35 ( Ô ҧ )_Iq Свойства методик объектно- ориентированного проектирования Ô описывается как Θ некоторой сущности реального мира; Ô, для которых определены места хранения, рассматриваются во взаимосвязи, и применительно к ним создаются ҧ - модули Š.
7 35 ( Ô ҧ )_Iq В процессе объектно-ориентированного анализа осуществляется идентификация Ô и их свойств; устанавливается перечень Ǫ, выполняемых над каждым Ô, в зависимости от его состояния; определяются связи между Ô для образования классов; устанавливаются требования к интерфейсу с Ô
8 35 ( Ô ҧ )_Iq этапа объектно-ориентированного проектирования разработка диаграммы аппаратных средств системы обработки Ď, показывающей процессоры, внешние устройства, вычислительные сети и их соединения; разработка структуры классов, описывающей связь между классами и Ô; разработка диаграмм Ô, показывающих взаимосвязи с другими Ô; разработка внутренней Ŝ ( ҧ -продукта)
9 Концепция объектно-ориентированного программирования Основные принципы: абстракция, наследование, инкапсуляция, полиморфизм. 35 ( Ô ҧ )_Iq
10 Абстракция способность языка программирования отображать объекты внешнего мира в форме абстрактных структур в соответствии с решаемой задачей. Абстрактные структуры, при помощи которых реализуется этот принцип, называются классами. Класс структура, описывающая объекты внешнего мира с помощью двух типов элементов: состояние объекта описывается полями класса (переменными разного типа), а поведение объекта его методами (процедурами и функциями). 35 ( Ô ҧ )_Iq
11 Классы представляют собой абстрактные описания структур Ď, но сами Ď они не содержат. Ď появляются тогда, когда по описаниям классов в памяти программы выделяется необходимое пространство и в нем создаются экземпляры класса, или объекты. Тогда для каждого поля класса отводится необходимая область памяти и в эту область можно поместить нужное значение. 35 ( Ô ҧ )_Iq
12 Наследование свойство класса порождать другие классы таким образом, что в порожденном классе (классе-потомке) содержатся все поля и все методы класса-родителя (базового класса), а также дополнительно собственные поля и методы. 35 ( Ô ҧ )_Iq
13 Пример Измерительные приборы: термометр, барометр и весы. Чтобы описать эти приборы внутри программы, создается три класса 35 ( Ô ҧ )_Iq класс «термометр»класс «весы»класс «барометр» Инв. номер Название Цвет Исполнение ТемператураВесДавление Изменить температуруИзменить весИзменить давление Метод классов Поля классов
14 Методы класса представляют реализацию некоторых действий - описывают поведение класса. Например, метод класса «термометр», который носит название «измерить температуру», призван помещать значение температуры в поле с именем «температура». 35 ( Ô ҧ )_Iq Экземпляр класса «термометр» Экземпляр класса класс «весы» Экземпляр класса класс «барометр» Инв. номер1 3 3 НазваниеTRMНазваниеVSVНазваниеDRM ЦветбелыйЦветсерыйЦветхром ИсполнениеоконныйИсполнениенапольныйИсполнениенастенный Температура10Вес2Давление230 Изменить температуруИзменить весИзменить давление
15 Пример 2 У разных классов есть одинаковые поля: Инв. номер. Название, Цвет, Исполнение. Наследование: класс Измеритель, в котором повторяющиеся поля, а затем классы Термометр, Весы и Барометр 35 ( Ô ҧ )_Iq класс «Измеритель» Инв. номер Название Цвет Исполнение класс «термометр» наследник класса «измеритель» класс «весы» наследник класса «измеритель» класс «барометр» наследник класса «измеритель» ТемператураВесДавление Изменить температуруИзменить весИзменить давление
16 Инкапсуляция способность класса скрывать от внешнего мира детали внутренней реализации. Области видимости обозначаются в структуре класса специальными служебными словами: private - все поля и методы, объявленные в этой области видимости, невидимы для внешнего мира, publiс - все, объявленное в этой зоне, для внешнего мира открыто. 35 ( Ô ҧ )_Iq
17 У класса появляется защитный корпус, предохраняющий от излишней перегрузки программы объявленными именами и методами. Наружу класс экспонирует только то, что составляет его интерфейс и предназначено для внешнего взаимодействия. Все остальные поля и методы он скрывает внутри, помещая их в область видимости private. 35 ( Ô ҧ )_Iq
18 Полиморфизм способность объектов выполнять одну и ту же команду разными способами. Свойства: способности трактовать объект класса-наследника как тип базового класса способности класса иметь виртуальные методы. Особенность виртуального метода - надежная связь с созданным экземпляром класса. 35 ( Ô ҧ )_Iq
19 Пример Если добавить в каждый из классов (в класс Измеритель и каждый из его наследников) метод Сигналить, а в реализации этого метода описали бы для каждого класса свой способ подавать сигнал (для термометра мигать, для весов издавать звук сирены, а для барометра свистеть), то мы могли бы всем объектам, потомкам класса Измеритель, дать команду: измерители, сигналить! И каждый из них подал бы сигнал: термометры бы замигали, весы издали звук сирены, а барометры засвистели. Это и есть результат работы виртуальных методов. 35 ( Ô ҧ )_Iq
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.