Разделы презентаций


Объектно-ориентированное программирование на С++

Содержание

Вводная лекцияПОП и ООПКонцепция ООП, понятие программыРоль языка программированияПринципы ООПСравнение ООП и ПОП

Слайды и текст этой презентации

Слайд 1Объектно-ориентированное программирование на С++
Спецкурс для студентов отделения «Прикладная математика и

информатика»

Надолин Константин Аркадьевич
Южный федеральный университет
Факультет –математики, механики и компьютерных наук
кафедра

математического моделирования
Объектно-ориентированное программирование на С++Спецкурс для студентов отделения «Прикладная математика и информатика»Надолин Константин АркадьевичЮжный федеральный университетФакультет –математики, механики

Слайд 2Вводная лекция
ПОП и ООП
Концепция ООП, понятие программы
Роль языка программирования
Принципы ООП
Сравнение

ООП и ПОП

Вводная лекцияПОП и ООПКонцепция ООП, понятие программыРоль языка программированияПринципы ООПСравнение ООП и ПОП

Слайд 3Литература
Буч Г. Объектно-ориентированное проектирование с примерами применения. – М.:Конкорд, 1992.–519

с.
Страуструп Б. Язык программирования С++, 3-е изд. – СПб.; М.:

“Невский Диалект” – “Издательство БИНОМ”, 1999. – 991 с. http://www.awl.com/cp/stroustrup3e
ЛитератураБуч Г. Объектно-ориентированное проектирование с примерами применения. – М.:Конкорд, 1992.–519 с.Страуструп Б. Язык программирования С++, 3-е изд.

Слайд 4Дополнительная литература
Шилд Г. Теория и практика С++. – СПб.: BVH-Санкт-Петербург,

1996. – 416 с.
Элджер Дж. С++: библиотека программиста. –

СПб.: Питер, 2000. – 320 с.
Пол А. Объектно-ориентированное программирование на С++. – СПб.; М.: “Невский Диалект” – “Издательство БИНОМ”, 1999. – 462 с.
Бабэ Б. Просто и ясно о Borland C++. – М.:БИНОМ, 1996. – 416 с.
Сван Т. Освоение Borland C++5. – К.: Диалектика, 1996. – 576 с.
Дополнительная литератураШилд Г. Теория и практика С++. – СПб.: BVH-Санкт-Петербург, 1996. – 416 с. Элджер Дж. С++:

Слайд 5ПОП и ООП
ПОП – процедурно-ориентированное программирование – это программирование задач

обработки данных (алгоритмически детерминированы), основанное на составлении и реализации алгоритма

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

Слайд 6Концепция ООП
ООП – это программирование задач имитационного моделирования (алгоритмически не

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


Язык (словарь) предметной области: сущности и действия с ними (типы данных и операции).
формирование абстракции понятий
формирование иерархии понятий
реализация понятий
использование понятий
модификация понятий
Примеры. 1) Арифметика; 2) Строки и файлы в С
Концепция ООПООП – это программирование задач имитационного моделирования (алгоритмически не заданных), основанное на формировании (конструировании и реализации)

Слайд 7Определение ООП
Объектно-ориентированное программирование – это методология программирования, которая основана на

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

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

Слайд 8ООП и язык
Объектно-ориентированный язык – это язык программирования, который не

позволяет отступать от принципов ООП при написании программ (например, Smalltalk).
Язык,

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

Слайд 9Принципы ООП
Абстрагирование
Инкапсуляция
Модульность
Иерархия
-------------------------
Типизация и полиморфизм
Параллелизм
Устойчивость

Принципы ООПАбстрагированиеИнкапсуляцияМодульностьИерархия-------------------------Типизация и полиморфизмПараллелизмУстойчивость

Слайд 10Принцип абстрагирования
Абстрагирование – один из главных способов решения сложных задач
Абстракция

– это такие существенные характеристики некоторого объекта, которые отличают его

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

Слайд 11
Формирование абстракции

Формирование абстракции

Слайд 12Абстракция определяет интерфейс класса
Формируя абстракцию, мы сосредотачиваем внимание на существенных

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

суть объекта, не больше, но и не меньше
Абстракция объекта определяется через протокол – набор определяющих операций
Абстракция объекта не должна зависеть от его внутреннего устройства (свойств)
Примеры. 1) Арифметика; 2) Строки и файлы в С
Абстракция определяет  интерфейс классаФормируя абстракцию, мы сосредотачиваем внимание на существенных с нашей точки зрения характеристиках объектаАбстракция

Слайд 13Принцип инкапсуляции
Никакая часть не должна находиться в зависимости от деталей

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

скрывает внутреннее устройство объекта и не позволяет объектам-пользователям различить (и использовать) особенности его внутреннего устройства.
Абстракция и инкапсуляция дополняют друг друга
Абстракция определяет интерфейс объектов класса
Инкапсуляция определяет реализацию объектов класса
Примеры. 1) Арифметика; 2) Строки и файлы в С
Принцип инкапсуляции	Никакая часть не должна находиться в зависимости от деталей внутреннего устройства других частейИнкапсуляция определяет явные барьеры

Слайд 14
Скрытие данных

Скрытие данных

Слайд 15Принцип модульности
Модульность, как самостоятельная концепция – это локализация частей программы

и ее разделение на раздельно компилируемые фрагменты, имеющие средства взаимосвязи
Модульная

декомпозиция
логическая локализация действия (функции), абстракции данных (класс), и имен (пространства имен)
физическая локализация и раздельная компиляция (файлы)
разделение интерфейса (.h-файлы) и реализации (.cpp-файлы) и их связь (#include)
Модульное агрегирование
файлы выполняют роль физических контейнеров, в которые помещаются определения классов и объектов
деление программы на модули бессистемным образом гораздо хуже, чем отсутствие модульности вообще
влияние на производительность системы (страничный свопинг)
Принцип модульности	Модульность, как самостоятельная концепция – это локализация частей программы и ее разделение на раздельно компилируемые фрагменты,

Слайд 16
Модульность: декомпозиция и агрегирование

Модульность: декомпозиция и агрегирование

Слайд 17Принцип иерархии
Иерархия – это ранжированная или упорядоченная система абстракций
Число абстракций

в реальных системах велико => для преодоления сложности программы абстракции

следует структурировать (иерархия по составу – отношение использования)
Многие абстракции отражают родственные понятия предметной области => для сокращения описания абстракций их следует структурировать (иерархия по номенклатуре)
Наследование – отношение между классами, когда один класс использует строение одного (простое наследование) или нескольких (множественное наследование) других классов. Это основной вид иерархии по номенклатуре. Наследование – такая иерархия абстракций, в которой подклассы (производные классы) наследуют строение от одного или нескольких суперклассов (базовых классов).
Принцип иерархии	Иерархия – это ранжированная или упорядоченная система абстракцийЧисло абстракций в реальных системах велико => для преодоления

Слайд 18
Иерархия

Иерархия

Слайд 19Принцип типизации и полиморфизма
Типизация – это ограничение, накладываемое на класс

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

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

Слайд 20
Типизация

Типизация

Слайд 21Принцип параллелизма
Параллелизм – свойство объектов находиться в активном, либо пассивном

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

управления (абстракцию процесса), что упрощает решение вопросов параллелизма (тупики, блокировки и т.п.)
Для однопроцессорных архитектур реализуется в минимальном виде
Пример – многооконный интерфейс Windows.
Принцип параллелизма	Параллелизм – свойство объектов находиться в активном, либо пассивном состоянии. Для многопроцессорных архитектур объект может представлять

Слайд 22
Параллелизм

Параллелизм

Слайд 23Принцип устойчивости
Устойчивость – свойство объектов сохранять свое состояние и принадлежность

к определенному классу.
Устойчивость в пространстве и времени
устойчивость в адресном

пространства
анонимные объекты (промежуточные результаты)
локальные объекты
устойчивость относительно породившего процесса
устойчивость относительно выполнения программы
устойчивость относительно эксплуатации программы
Корректность объектов
Инвариант представления
Принцип устойчивости	Устойчивость – свойство объектов сохранять свое состояние и принадлежность к определенному классу. Устойчивость в пространстве и

Слайд 24
Устойчивость

Устойчивость

Слайд 25Сравнение ООП и ПОП
Выводы: 1) ООП и ПОП не исключают

друг друга
2) Первенство за ООП

Сравнение ООП и ПОПВыводы: 1) ООП и ПОП не исключают друг друга	  2) Первенство за ООП

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика