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

OOP

  • 1.
    Основы ООП иООД Основные принципы и понятия
  • 2.
    Методы программирования ● Процедурный ●Модульный ● Объектный ● Объектно-ориентированный ● Обобщенный
  • 3.
    Принципы объектной модели Основные: –Абстрагирование – Инкапсуляция – Модульность – Иерархия Дополнительные: – Типизация – Параллелизм – Сохраняемость
  • 4.
    Абстрагирование ● Абстракция выделяетсущественные характеристики некоторого объекта, отличающие его от всех других видов объектов и, таким образом, четко определяет его концептуальные границы с точки зрения наблюдателя. ● Барьер абстракции ● Принцип наименьшего удивления
  • 6.
    Инкапсуляция ● Инкапсуляция —это процесс отделения друг от друга элементов объекта, определяющих его устройство и поведение; инкапсуляция служит для того, чтобы изолировать контрактные обязательства абстракции от их реализации. ● Интерфейс ● Реализация Интерфейс Реализация Объект
  • 8.
    Модульность ● Модульность —это свойство системы, которая была разложена на внутренне сильно связанные, но слабо связанные между собой модули.
  • 9.
    Иерархия ● Иерархия —это упорядочение абстракций путем расположения их по уровням.
  • 10.
    Вторичные принципы ● Типизация— это способ защититься от использования объектов одного класса вместо другого, или по крайней мере управлять таким использованием. ● Параллелизм — это свойство, отличающее активные объекты от пассивных. ● Сохраняемость — это способность объекта существовать во времени, переживая породивший его процесс, и (или) в пространстве, перемещаясь из своего первоначального адресного пространства.
  • 11.
    Основные понятия ● Чтотакое объект? ● Как объекты реального мира связаны с объектами в объектно-ориентированной системе? ● Какими свойствами обладают объекты в программировании? ● Как объекты взаимодействуют между собой?
  • 12.
    Объект и класс ●Объект обладает состоянием, поведением и идентичностью; структура и поведение схожих объектов определяет общий для них класс; термины «экземпляр класса» и «объект» взаимозаменяемы. ● Класс – описание множества объектов со схожей структурой и поведением.
  • 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 г.