🗊Презентация Объектно-ориентированное программирование (ООП)

Нажмите для полного просмотра!
Объектно-ориентированное программирование (ООП), слайд №1Объектно-ориентированное программирование (ООП), слайд №2Объектно-ориентированное программирование (ООП), слайд №3Объектно-ориентированное программирование (ООП), слайд №4Объектно-ориентированное программирование (ООП), слайд №5Объектно-ориентированное программирование (ООП), слайд №6Объектно-ориентированное программирование (ООП), слайд №7Объектно-ориентированное программирование (ООП), слайд №8Объектно-ориентированное программирование (ООП), слайд №9Объектно-ориентированное программирование (ООП), слайд №10Объектно-ориентированное программирование (ООП), слайд №11Объектно-ориентированное программирование (ООП), слайд №12Объектно-ориентированное программирование (ООП), слайд №13Объектно-ориентированное программирование (ООП), слайд №14Объектно-ориентированное программирование (ООП), слайд №15Объектно-ориентированное программирование (ООП), слайд №16Объектно-ориентированное программирование (ООП), слайд №17Объектно-ориентированное программирование (ООП), слайд №18Объектно-ориентированное программирование (ООП), слайд №19Объектно-ориентированное программирование (ООП), слайд №20Объектно-ориентированное программирование (ООП), слайд №21Объектно-ориентированное программирование (ООП), слайд №22Объектно-ориентированное программирование (ООП), слайд №23Объектно-ориентированное программирование (ООП), слайд №24Объектно-ориентированное программирование (ООП), слайд №25Объектно-ориентированное программирование (ООП), слайд №26Объектно-ориентированное программирование (ООП), слайд №27Объектно-ориентированное программирование (ООП), слайд №28Объектно-ориентированное программирование (ООП), слайд №29Объектно-ориентированное программирование (ООП), слайд №30Объектно-ориентированное программирование (ООП), слайд №31Объектно-ориентированное программирование (ООП), слайд №32Объектно-ориентированное программирование (ООП), слайд №33Объектно-ориентированное программирование (ООП), слайд №34Объектно-ориентированное программирование (ООП), слайд №35Объектно-ориентированное программирование (ООП), слайд №36Объектно-ориентированное программирование (ООП), слайд №37Объектно-ориентированное программирование (ООП), слайд №38Объектно-ориентированное программирование (ООП), слайд №39

Содержание

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

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


Слайд 1





Объектно-ориентированное программирование (ООП)
Описание слайда:
Объектно-ориентированное программирование (ООП)

Слайд 2


Объектно-ориентированное программирование (ООП), слайд №2
Описание слайда:

Слайд 3





Принципы процедурного программирования 
Главный принцип процедурного программирования — основная программа выполняется строчка за строчкой, вызывая процедуры и функции, все ветвления выполняются с помощью условных операторов.
Описание слайда:
Принципы процедурного программирования Главный принцип процедурного программирования — основная программа выполняется строчка за строчкой, вызывая процедуры и функции, все ветвления выполняются с помощью условных операторов.

Слайд 4





В некоторых задачах порядок действий определяется пользователем, другими программами или поступлением новых данных из другого источника (например, из сети), поэтому классическая схема не работает.
В некоторых задачах порядок действий определяется пользователем, другими программами или поступлением новых данных из другого источника (например, из сети), поэтому классическая схема не работает.
В таких задачах программа должна «включаться в работу» только тогда, когда получит условный сигнал, то есть произойдет некоторое событие (изменение состояния). При этом программа должна «знать», как реагировать на нужное ей событие, то есть должна иметь обработчик этого события — процедуру специального типа.
Описание слайда:
В некоторых задачах порядок действий определяется пользователем, другими программами или поступлением новых данных из другого источника (например, из сети), поэтому классическая схема не работает. В некоторых задачах порядок действий определяется пользователем, другими программами или поступлением новых данных из другого источника (например, из сети), поэтому классическая схема не работает. В таких задачах программа должна «включаться в работу» только тогда, когда получит условный сигнал, то есть произойдет некоторое событие (изменение состояния). При этом программа должна «знать», как реагировать на нужное ей событие, то есть должна иметь обработчик этого события — процедуру специального типа.

Слайд 5





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

Слайд 6





Определение
Объектно-ориентированное программирование (ООП, Object-Oriented Programming) - совокупность принципов, технологий , а также инструментальных средств для создания программных систем на основе архитектуры взаимодействия объектов.
Описание слайда:
Определение Объектно-ориентированное программирование (ООП, Object-Oriented Programming) - совокупность принципов, технологий , а также инструментальных средств для создания программных систем на основе архитектуры взаимодействия объектов.

Слайд 7






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

Слайд 8





Объект
Объект — понятие, абстракция или любой предмет с четко очерченными границами, имеющий смысл в контексте рассматриваемой прикладной проблемы.
Описание слайда:
Объект Объект — понятие, абстракция или любой предмет с четко очерченными границами, имеющий смысл в контексте рассматриваемой прикладной проблемы.

Слайд 9





Объекты – это что?
Это сообщения и кнопки
Окна ввода и раскрывающиеся списки
Главные меню и контекстные
Описание слайда:
Объекты – это что? Это сообщения и кнопки Окна ввода и раскрывающиеся списки Главные меню и контекстные

Слайд 10






В каждый момент времени объект характеризуется присущим именно ему набором свойств (properties) и методов (methods) – операций, совершаемых над другими объектами или данным объектом, а также реагирует на события (events).
Описание слайда:
В каждый момент времени объект характеризуется присущим именно ему набором свойств (properties) и методов (methods) – операций, совершаемых над другими объектами или данным объектом, а также реагирует на события (events).

Слайд 11





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

Слайд 12





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

Слайд 13





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

Слайд 14






объекты – это «существительные», свойства объекта – «прилагательные», а методы объекта – это «глаголы».
Описание слайда:
объекты – это «существительные», свойства объекта – «прилагательные», а методы объекта – это «глаголы».

Слайд 15





Объекты – это что?
Описание слайда:
Объекты – это что?

Слайд 16


Объектно-ориентированное программирование (ООП), слайд №16
Описание слайда:

Слайд 17





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

Слайд 18





Классы объектов
Каждый конкретный класс имеет свои особенности поведения и характеристики, определяющие этот класс. Например,
Описание слайда:
Классы объектов Каждый конкретный класс имеет свои особенности поведения и характеристики, определяющие этот класс. Например,

Слайд 19





Классы объектов
Иерархия вложенности классов для примера общего класса "Компьютер"
Описание слайда:
Классы объектов Иерархия вложенности классов для примера общего класса "Компьютер"

Слайд 20





Пример
Каждый из классов обладает специфическим набором свойств, методов и событий. 
Например, в приложении Word существует класс объектов «Документ»(Document), который обладает определенными наборами:
Свойств: имя (Name), полное имя (FullName) и так далее;
Методов: открыть документ (Open), напечатать документ (PrintOut), сохранить документ (Save);
Событий: создание документа (Document_New), закрытие документа (Document_Close)  и т.д.
Описание слайда:
Пример Каждый из классов обладает специфическим набором свойств, методов и событий. Например, в приложении Word существует класс объектов «Документ»(Document), который обладает определенными наборами: Свойств: имя (Name), полное имя (FullName) и так далее; Методов: открыть документ (Open), напечатать документ (PrintOut), сохранить документ (Save); Событий: создание документа (Document_New), закрытие документа (Document_Close) и т.д.

Слайд 21





Объявление класса
Туре
<имя  класса> = Class(<имя класса - родителя>)
public    // т.е. доступно всем
<поля, методы, свойства, события>
published // т.е. видны в Инспекторе Объекта и изменяемы
<поля, свойства>
protected // доступно только  потомкам
<поля, методы, свойства, события>
private	// доступно только в этом модуле
<поля, методы, свойства, события>
end;
Описание слайда:
Объявление класса Туре <имя класса> = Class(<имя класса - родителя>) public // т.е. доступно всем <поля, методы, свойства, события> published // т.е. видны в Инспекторе Объекта и изменяемы <поля, свойства> protected // доступно только потомкам <поля, методы, свойства, события> private // доступно только в этом модуле <поля, методы, свойства, события> end;

Слайд 22





Создание класса
MyClass = class – создаем класс Myclass.
Name: string;
Color: string; – описываем параметры объекта, его имя и цвет. Практически задаем переменные.
function MyNewFunction(o: MyClass): string ; 
– создаем метод используя один параметр передавая в него объект.
сonstructor Create (NewName: string; NewColor: string); – формируем конструктор и задаем начальные значения параметров объекта.
destructor Destroy; – разрушаем объект.
Описание слайда:
Создание класса MyClass = class – создаем класс Myclass. Name: string; Color: string; – описываем параметры объекта, его имя и цвет. Практически задаем переменные. function MyNewFunction(o: MyClass): string ; – создаем метод используя один параметр передавая в него объект. сonstructor Create (NewName: string; NewColor: string); – формируем конструктор и задаем начальные значения параметров объекта. destructor Destroy; – разрушаем объект.

Слайд 23


Объектно-ориентированное программирование (ООП), слайд №23
Описание слайда:

Слайд 24





Параметр Sender
 Параметр Sender в Delphi-программе присутствует в каждом обработчике событий любого компонента.
Описание слайда:
Параметр Sender  Параметр Sender в Delphi-программе присутствует в каждом обработчике событий любого компонента.

Слайд 25





Принципы ООП: 
инкапсуляция
наследование 
полиморфизм
Описание слайда:
Принципы ООП: инкапсуляция наследование полиморфизм

Слайд 26





Мы ничего не знаем о том, как устроен объект внутри. Для нас это, как говорят кибернетики, «черный ящик». 
Мы ничего не знаем о том, как устроен объект внутри. Для нас это, как говорят кибернетики, «черный ящик». 
Для того, чтобы работать с объектом, не нужно знать его внутреннее устройство! Достаточно, что можно узнать и изменить его свойства, а также применять доступные методы управления.
Описание слайда:
Мы ничего не знаем о том, как устроен объект внутри. Для нас это, как говорят кибернетики, «черный ящик». Мы ничего не знаем о том, как устроен объект внутри. Для нас это, как говорят кибернетики, «черный ящик». Для того, чтобы работать с объектом, не нужно знать его внутреннее устройство! Достаточно, что можно узнать и изменить его свойства, а также применять доступные методы управления.

Слайд 27





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

Слайд 28





Инкапсуляция
Инкапсуляция (encapsulation) — это сокрытие реализации класса и отделение его внутреннего представления от внешнего (интерфейса).
Описание слайда:
Инкапсуляция Инкапсуляция (encapsulation) — это сокрытие реализации класса и отделение его внутреннего представления от внешнего (интерфейса).

Слайд 29





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

Слайд 30





Наследование
Наследование (inheritance) — это отношение между классами, при котором класс использует структуру или поведение другого класса (одиночное наследование), или других (множественное наследование) классов. 
Наследование вводит иерархию «общее/частное», в которой подкласс наследует от одного или нескольких более общих суперклассов.
Подклассы обычно дополняют или переопределяют унаследованную структуру и поведение.
Описание слайда:
Наследование Наследование (inheritance) — это отношение между классами, при котором класс использует структуру или поведение другого класса (одиночное наследование), или других (множественное наследование) классов. Наследование вводит иерархию «общее/частное», в которой подкласс наследует от одного или нескольких более общих суперклассов. Подклассы обычно дополняют или переопределяют унаследованную структуру и поведение.

Слайд 31





Наследование
Описание слайда:
Наследование

Слайд 32





Полиморфизм
Пример из реального мира:
родственные объекты «птица», «рыба» и «животное» (базовый класс «живое существо») по-разному реализуют операцию «перемещение», летая, плавая и бегая соответственно. 
Метод «перемещение» потребует полиморфного объявления. Это позволит избежать ситуаций, когда вызов метода «перемещение» для объекта типа «рыба» приведет к тому, что объект реализует операцию «бежать».
Описание слайда:
Полиморфизм Пример из реального мира: родственные объекты «птица», «рыба» и «животное» (базовый класс «живое существо») по-разному реализуют операцию «перемещение», летая, плавая и бегая соответственно. Метод «перемещение» потребует полиморфного объявления. Это позволит избежать ситуаций, когда вызов метода «перемещение» для объекта типа «рыба» приведет к тому, что объект реализует операцию «бежать».

Слайд 33





Полиморфизм
К объектам разных классов можно применять один и тот же метод, вот только действовать этот метод будет по-разному. 
Например, к большинству объектов в Windows&Office можно применять одни и те же методы: копирование, перемещение, переименование, удаление и т.п. Однако, механизмы реализации этих методов для разных классов неодинаковы.
Описание слайда:
Полиморфизм К объектам разных классов можно применять один и тот же метод, вот только действовать этот метод будет по-разному. Например, к большинству объектов в Windows&Office можно применять одни и те же методы: копирование, перемещение, переименование, удаление и т.п. Однако, механизмы реализации этих методов для разных классов неодинаковы.

Слайд 34





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

Слайд 35





Полиморфизм. Пример
Пусть у нас имеются некое обобщенное поле для хранения данных — класс TField и три его потомка — для хранения строк, целых и вещественных чисел: 
type  TField = class 
function GetData:string; virtual; 
abstract;  
end; 
TStringField = class(TField) 
FData : string; 
function GetData: string; override;  
end; 
TIntegerField = class(TField) 
FData : Integer; 
function GetData: string; override; 
  end; 
TExtendedField = class(TField) 
FData : Extended; 
function GetData: string; override;  
end;
Описание слайда:
Полиморфизм. Пример Пусть у нас имеются некое обобщенное поле для хранения данных — класс TField и три его потомка — для хранения строк, целых и вещественных чисел: type  TField = class function GetData:string; virtual; abstract;  end; TStringField = class(TField) FData : string; function GetData: string; override;  end; TIntegerField = class(TField) FData : Integer; function GetData: string; override;   end; TExtendedField = class(TField) FData : Extended; function GetData: string; override;  end;

Слайд 36





В базовом классе при помощи директивы virtual метод GetData объявлен виртуальным. 
В базовом классе при помощи директивы virtual метод GetData объявлен виртуальным. 
Объявление метода виртуальным дает возможность дочернему классу произвести замену виртуального метода своим собственным.
В каждом дочернем классе определен свой метод GetData, который замещает соответствующий метод родительского класса (метод порожденного класса, замещающий виртуальный метод родительского класса, помечается директивой override).
Описание слайда:
В базовом классе при помощи директивы virtual метод GetData объявлен виртуальным. В базовом классе при помощи директивы virtual метод GetData объявлен виртуальным. Объявление метода виртуальным дает возможность дочернему классу произвести замену виртуального метода своим собственным. В каждом дочернем классе определен свой метод GetData, который замещает соответствующий метод родительского класса (метод порожденного класса, замещающий виртуальный метод родительского класса, помечается директивой override).

Слайд 37





классы содержат разнотипные поля данных FData и только-то и "умеют", что сообщить о значении этих данных текстовой строкой (при помощи метода GetData). Внешняя по отношению к ним процедура ShowData получает объект в виде параметра и показывает эту строку. 
классы содержат разнотипные поля данных FData и только-то и "умеют", что сообщить о значении этих данных текстовой строкой (при помощи метода GetData). Внешняя по отношению к ним процедура ShowData получает объект в виде параметра и показывает эту строку. 
В процедуре showData параметр описан как TFieid — это значит, что в нее можно передавать объекты классов и TStringField,и TIntegerField, и TExtendedField,и любого другого потомка класса TFieid. 
Но какой (точнее, чей) метод GetData при этом будет вызван? Тот, который соответствует классу фактически переданного объекта. Это иллюстрация принципа «полиморфизм».
Описание слайда:
классы содержат разнотипные поля данных FData и только-то и "умеют", что сообщить о значении этих данных текстовой строкой (при помощи метода GetData). Внешняя по отношению к ним процедура ShowData получает объект в виде параметра и показывает эту строку. классы содержат разнотипные поля данных FData и только-то и "умеют", что сообщить о значении этих данных текстовой строкой (при помощи метода GetData). Внешняя по отношению к ним процедура ShowData получает объект в виде параметра и показывает эту строку. В процедуре showData параметр описан как TFieid — это значит, что в нее можно передавать объекты классов и TStringField,и TIntegerField, и TExtendedField,и любого другого потомка класса TFieid. Но какой (точнее, чей) метод GetData при этом будет вызван? Тот, который соответствует классу фактически переданного объекта. Это иллюстрация принципа «полиморфизм».

Слайд 38





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

Слайд 39





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



Похожие презентации
Mypresentation.ru
Загрузить презентацию