SlideShare uma empresa Scribd logo
1 de 22
Основы ООП и ООД
Основные принципы и понятия
Методы программирования
● Процедурный
● Модульный
● Объектный
● Объектно-ориентированный
● Обобщенный
Принципы объектной модели
Основные:
– Абстрагирование
– Инкапсуляция
– Модульность
– Иерархия
Дополнительные:
– Типизация
– Параллелизм
– Сохраняемость
Абстрагирование
● Абстракция выделяет существенные
характеристики некоторого объекта,
отличающие его от всех других видов объектов
и, таким образом, четко определяет его
концептуальные границы с точки зрения
наблюдателя.
● Барьер абстракции
● Принцип наименьшего удивления
Инкапсуляция
● Инкапсуляция — это процесс отделения друг от друга
элементов объекта, определяющих его устройство и поведение;
инкапсуляция служит для того, чтобы изолировать контрактные
обязательства абстракции от их реализации.
● Интерфейс
● Реализация Интерфейс
Реализация
Объект
Модульность
● Модульность — это свойство системы, которая была
разложена на внутренне сильно связанные, но слабо связанные
между собой модули.
Иерархия
● Иерархия — это упорядочение абстракций путем расположения
их по уровням.
Вторичные принципы
● Типизация — это способ защититься от использования объектов
одного класса вместо другого, или по крайней мере управлять
таким использованием.
● Параллелизм — это свойство, отличающее активные объекты от
пассивных.
● Сохраняемость — это способность объекта существовать во
времени, переживая породивший его процесс, и (или) в
пространстве, перемещаясь из своего первоначального адресного
пространства.
Основные понятия
● Что такое объект?
● Как объекты реального мира связаны с
объектами в объектно-ориентированной
системе?
● Какими свойствами обладают объекты в
программировании?
● Как объекты взаимодействуют между собой?
Объект и класс
● Объект обладает состоянием, поведением и
идентичностью; структура и поведение схожих
объектов определяет общий для них класс;
термины «экземпляр класса» и «объект»
взаимозаменяемы.
● Класс – описание множества объектов со схожей
структурой и поведением.
Состояние объекта
● Состояние объекта характеризуется перечнем
(обычно статическим) всех свойств данного
объекта и текущими (обычно динамическими)
значениями каждого из этих свойств.
Поведение объекта
● Поведение — это то, как объект действует и
реагирует; поведение выражается в терминах
состояния объекта и передачи сообщений.
● Иными словами, поведение объекта — это его
наблюдаемая и проверяемая извне деятельность.
● Состояние объекта представляет суммарный
результат его поведения.
Методы объекта
● Конструкторы – методы создания объекта и/или его
инициализации.
● Деструкторы – методы, освобождающие состояние и ресурсы
объекта и/или разрушающие сам объект
● Селекторы – методы, считывающие но не меняющие состояние
объекта
● Модификаторы – методы , способные изменить состояние
объекта
● Итераторы – методы, позволяющие организовать доступ к
частям объекта контейнера в строго определенной
последовательности.
Идентичность объекта
● Идентичность – это такое свойство объекта,
которое отличает его от всех других объектов.
● operator==() и equals() в языке Java.
Объектно-ориентированный анализ,
дизайн и проектирование
Объектно-ориентированное проектирование (дизайн) — это
методология проектирования, соединяющая в себе процесс
объектной декомпозиции и приемы представления логической и
физической, а также статической и динамической моделей
проектируемой системы.
Объектно-ориентированный анализ — это методология, при
которой требования к системе воспринимаются с точки зрения
классов и объектов, выявленных в предметной области.
Менеджер проектов
Обязанности:
– Общение с клиентом
– Набор команды для решения задачи
– Проектирование архитектуры системы
– Планирование разработки по времени
Принципы ОО дизайна
● Единственность абстракции
● Принцип инверсии зависимости
● Принцип Деметра
● Принцип подстановки Лисковой
● Принцип разделения интерфейсов
● Принцип ацикличности зависимостей
Список литературы
● Мухортов В.В., Рылов В.Ю. “Объектно-ориентированное
программирование, анализ и дизайн”
● Гради Буч “Объектно-ориентированный анализ и
проектирование”
Спасибо за внимание
Презентацию выполнил:
Семенычев Александр
Владимирович
Инженер-программист
АЦИТ ГОУ ВПО СибГУТИ
e-mail: xandnsk@gmail.com
ICQ: 225-605-021
телефон: +7 913 457 2895
2010 г.

Mais conteúdo relacionado

Semelhante a OOP

Проектирование_и_архитектура_ПС_2022_L08s.ppt
Проектирование_и_архитектура_ПС_2022_L08s.pptПроектирование_и_архитектура_ПС_2022_L08s.ppt
Проектирование_и_архитектура_ПС_2022_L08s.pptdinarium2016
 
iOS-02-Паттерны ООП
iOS-02-Паттерны ООПiOS-02-Паттерны ООП
iOS-02-Паттерны ООПNoveo
 
Pmo learning. integration and content management
Pmo learning. integration and content managementPmo learning. integration and content management
Pmo learning. integration and content managementIgor Ustinov
 
Проектирование_и_архитектура_ПС_2022_L09s.ppt
Проектирование_и_архитектура_ПС_2022_L09s.pptПроектирование_и_архитектура_ПС_2022_L09s.ppt
Проектирование_и_архитектура_ПС_2022_L09s.pptdinarium2016
 
Парадигма объектно-ориентированного программирования.
Парадигма объектно-ориентированного программирования.Парадигма объектно-ориентированного программирования.
Парадигма объектно-ориентированного программирования.Unguryan Vitaliy
 
Большие проекты, архитектура и фреймворки.
Большие проекты, архитектура и фреймворки.Большие проекты, архитектура и фреймворки.
Большие проекты, архитектура и фреймворки.EatDog
 
Java. Инкапсуляция.
Java. Инкапсуляция.Java. Инкапсуляция.
Java. Инкапсуляция.Unguryan Vitaliy
 
3. видеошпрагалка
3. видеошпрагалка3. видеошпрагалка
3. видеошпрагалкаRnD_SM
 

Semelhante a OOP (16)

Системы систем
Системы системСистемы систем
Системы систем
 
Проектирование_и_архитектура_ПС_2022_L08s.ppt
Проектирование_и_архитектура_ПС_2022_L08s.pptПроектирование_и_архитектура_ПС_2022_L08s.ppt
Проектирование_и_архитектура_ПС_2022_L08s.ppt
 
ооп (13)
ооп (13)ооп (13)
ооп (13)
 
iOS-02-Паттерны ООП
iOS-02-Паттерны ООПiOS-02-Паттерны ООП
iOS-02-Паттерны ООП
 
Pmo learning. integration and content management
Pmo learning. integration and content managementPmo learning. integration and content management
Pmo learning. integration and content management
 
Проектирование_и_архитектура_ПС_2022_L09s.ppt
Проектирование_и_архитектура_ПС_2022_L09s.pptПроектирование_и_архитектура_ПС_2022_L09s.ppt
Проектирование_и_архитектура_ПС_2022_L09s.ppt
 
Парадигма объектно-ориентированного программирования.
Парадигма объектно-ориентированного программирования.Парадигма объектно-ориентированного программирования.
Парадигма объектно-ориентированного программирования.
 
4 тема
4 тема4 тема
4 тема
 
Большие проекты, архитектура и фреймворки.
Большие проекты, архитектура и фреймворки.Большие проекты, архитектура и фреймворки.
Большие проекты, архитектура и фреймворки.
 
Java. Инкапсуляция.
Java. Инкапсуляция.Java. Инкапсуляция.
Java. Инкапсуляция.
 
3. видеошпрагалка
3. видеошпрагалка3. видеошпрагалка
3. видеошпрагалка
 
ооп
оопооп
ооп
 
DESIGN PATTERNS? EASY!
DESIGN PATTERNS? EASY!DESIGN PATTERNS? EASY!
DESIGN PATTERNS? EASY!
 
Lection 21-22
Lection 21-22Lection 21-22
Lection 21-22
 
Netpeak Talks #3: Масштабируемое приложение на PHP
Netpeak Talks #3: Масштабируемое приложение на PHPNetpeak Talks #3: Масштабируемое приложение на PHP
Netpeak Talks #3: Масштабируемое приложение на PHP
 
п8
п8п8
п8
 

OOP

  • 1. Основы ООП и ООД Основные принципы и понятия
  • 2. Методы программирования ● Процедурный ● Модульный ● Объектный ● Объектно-ориентированный ● Обобщенный
  • 3. Принципы объектной модели Основные: – Абстрагирование – Инкапсуляция – Модульность – Иерархия Дополнительные: – Типизация – Параллелизм – Сохраняемость
  • 4. Абстрагирование ● Абстракция выделяет существенные характеристики некоторого объекта, отличающие его от всех других видов объектов и, таким образом, четко определяет его концептуальные границы с точки зрения наблюдателя. ● Барьер абстракции ● Принцип наименьшего удивления
  • 5.
  • 6. Инкапсуляция ● Инкапсуляция — это процесс отделения друг от друга элементов объекта, определяющих его устройство и поведение; инкапсуляция служит для того, чтобы изолировать контрактные обязательства абстракции от их реализации. ● Интерфейс ● Реализация Интерфейс Реализация Объект
  • 7.
  • 8. Модульность ● Модульность — это свойство системы, которая была разложена на внутренне сильно связанные, но слабо связанные между собой модули.
  • 9. Иерархия ● Иерархия — это упорядочение абстракций путем расположения их по уровням.
  • 10. Вторичные принципы ● Типизация — это способ защититься от использования объектов одного класса вместо другого, или по крайней мере управлять таким использованием. ● Параллелизм — это свойство, отличающее активные объекты от пассивных. ● Сохраняемость — это способность объекта существовать во времени, переживая породивший его процесс, и (или) в пространстве, перемещаясь из своего первоначального адресного пространства.
  • 11. Основные понятия ● Что такое объект? ● Как объекты реального мира связаны с объектами в объектно-ориентированной системе? ● Какими свойствами обладают объекты в программировании? ● Как объекты взаимодействуют между собой?
  • 12. Объект и класс ● Объект обладает состоянием, поведением и идентичностью; структура и поведение схожих объектов определяет общий для них класс; термины «экземпляр класса» и «объект» взаимозаменяемы. ● Класс – описание множества объектов со схожей структурой и поведением.
  • 13.
  • 14. Состояние объекта ● Состояние объекта характеризуется перечнем (обычно статическим) всех свойств данного объекта и текущими (обычно динамическими) значениями каждого из этих свойств.
  • 15. Поведение объекта ● Поведение — это то, как объект действует и реагирует; поведение выражается в терминах состояния объекта и передачи сообщений. ● Иными словами, поведение объекта — это его наблюдаемая и проверяемая извне деятельность. ● Состояние объекта представляет суммарный результат его поведения.
  • 16. Методы объекта ● Конструкторы – методы создания объекта и/или его инициализации. ● Деструкторы – методы, освобождающие состояние и ресурсы объекта и/или разрушающие сам объект ● Селекторы – методы, считывающие но не меняющие состояние объекта ● Модификаторы – методы , способные изменить состояние объекта ● Итераторы – методы, позволяющие организовать доступ к частям объекта контейнера в строго определенной последовательности.
  • 17. Идентичность объекта ● Идентичность – это такое свойство объекта, которое отличает его от всех других объектов. ● operator==() и equals() в языке Java.
  • 18. Объектно-ориентированный анализ, дизайн и проектирование Объектно-ориентированное проектирование (дизайн) — это методология проектирования, соединяющая в себе процесс объектной декомпозиции и приемы представления логической и физической, а также статической и динамической моделей проектируемой системы. Объектно-ориентированный анализ — это методология, при которой требования к системе воспринимаются с точки зрения классов и объектов, выявленных в предметной области.
  • 19. Менеджер проектов Обязанности: – Общение с клиентом – Набор команды для решения задачи – Проектирование архитектуры системы – Планирование разработки по времени
  • 20. Принципы ОО дизайна ● Единственность абстракции ● Принцип инверсии зависимости ● Принцип Деметра ● Принцип подстановки Лисковой ● Принцип разделения интерфейсов ● Принцип ацикличности зависимостей
  • 21. Список литературы ● Мухортов В.В., Рылов В.Ю. “Объектно-ориентированное программирование, анализ и дизайн” ● Гради Буч “Объектно-ориентированный анализ и проектирование”
  • 22. Спасибо за внимание Презентацию выполнил: Семенычев Александр Владимирович Инженер-программист АЦИТ ГОУ ВПО СибГУТИ e-mail: xandnsk@gmail.com ICQ: 225-605-021 телефон: +7 913 457 2895 2010 г.