МЕТОДИ ОБ'ЄКТНО- ОРІЄНТОВАНОГО ПРОГРАМУВАННЯ Володимир Васильович Бублик Кафедра мультимедійних систем, кімн. 204/1 Консультації: середа, четвер 15-16.

Презентация:



Advertisements
Похожие презентации
Бублик Володимир Васильович Об'єктно-орієнтоване програмування Частина 1. Об'єктне програмування. Лекція 2. Копіювання об'єктів Лекції для студентів 2.
Advertisements

База даних (БД) це структурована сукупність взаємопов'язаних даних певної предметної області (реальних об'єктів, процесів, явищ тощо). це структурована.
Верона (Італія). Арена, І ст. Якби будівельники будували будинки так, як програмісти складають програми, досить було б залетіти одному дятлу, щоб зруйнувати.
Бази даних Поняття про моделі даних. Види моделей даних Бази даних.
Базові поняття програмування. Що таке програма? Чим вона відрізняється від не-програми? Складова інформаційної системи, що виконує обробку даних та може.
Бублик Володимир Васильович Об'єктно- орієнтоване програмування Частина 2. Ієрархічне програмування. Лекція 11. Поліморфізм Лекції для студентів 2 курсу.
РОЗДІЛ 2 ОБ'ЄКТИ ТА ІНФОРМАЦІЙНІ СИСТЕМИ Інформатика 9 клас.
Методи лінгвістичного дослідження тексту документа
Бублик Володимир Васильович Об'єктно-орієнтоване програмування Частина 1. Об'єктне програмування. Лекція 1. Принцип інкапсуляції Лекції для студентів 2.
Урок 10 5 клас. Комп'ютернні мережі. Локальна мережа. Використаннямережевих папок
Урок 6 5 клас. Файли, папки та операції над ними.
Класи пам'яті даних. Клас пам'яті, час існування та видимість об'єкта Кожен обєкт програми (змінна, функція,...) має свій тип і клас памяті. Тип визначає.
Основи баз даних. База даних (БД) Структурована сукупність даних, які відображують стан обєктів певної предметної області та звязки між ними Предметна.
Тема уроку: Проектування бази даних. Мета уроку:навчити створювати структуру нової бази даних на логічному та фізичному рівнях проектування, працювати.
РОЗДІЛ 2 ІНФОРМАЦІЙНІ СИСТЕМИ Інформатика 9 клас.
Бублик Володимир Васильович Об'єктно- орієнтоване програмування Частина 2. Ієрархічне програмування. Лекція 12. Ітераторні контейнери Лекції для студентів.
Кожен оточуючий нас обєкт має свої властивості. Обєкт – цілісна частина навколишнього світу. Наприклад, стіл має такі властивості, як розміри, форму,
Урок № 25, 26 8 клас. Компоненти «Кнопка», «Напис» середовища Lazarus
Ізяславський НВК 2, Гульчак І.В. МОДЕЛЬ. Обєкти – це все те, що ми розрізняємо як єдине ціле, яке реально існує або виникає в нашій свідомості. Вони бувають.
Типи даних мови Visual Basic та їх опис. Опис величин Величина - це об'єкт, який має стале або змінне значення. Основні характеристики величин: ім'я,
Транксрипт:

МЕТОДИ ОБ'ЄКТНО- ОРІЄНТОВАНОГО ПРОГРАМУВАННЯ Володимир Васильович Бублик Кафедра мультимедійних систем, кімн. 204/1 Консультації: середа, четвер год. You are welcome!

Що таке ООП? Те, чим займаються розробники великих і надвеликих програмних систем © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель2

Думка авторитета "This paradigm closely reflects the structure of systems 'in the real world', and it is therefore well suited to model complex systems with complex behaviors. © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель3 Niklaus Wirth, "Good Ideas through the Looking Glass"

Поки ще може не пізно? By claiming that they can contribute to software engineering, the soft scientists make themselves even more ridiculous. (Not less dangerous, alas!) In spite of its name, software engineering requires (cruelly) hard science for its support. © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель4 Edsgar W. Dijkstra, How do we tell truths that might hurt, EWD498?

Програма МООП 1.Обєктна модель 2.Типова схема класу 3.Обробка винятків 4.Відкладене копіювання 5.Функтори 6.Вкладення (layering) обєктів 7.Ієрархія класів 8.Поліморфізм 9.Параметризовані класи (class template) 10.Рефакторінг програмної системи 11.Проектні взірці (design pattern) © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель5

6 Література

ЛЕКЦІЯ 1. ОБ'ЄКТНА МОДЕЛЬ © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель7

Обєктно-орієнтоване програмування Методологія програмування, яка розглядає програму як сукупність обєктів, кожен з яких є обєктом певного класу, а самі класи утворюють систему успадкування. Без успадкування маємо програмування на основі абстрактних типів даних, а мову обєктну. © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель8

Три кити ООП ООП ґрунтується на об'єктах, а не алгоритмах, пов'язаних ієрархіями вкладення; Кожен об'єкт суть екземпляр певного класу Класи утворюють ієрархію спадкувань ООП = Інкапсуляція, успадкування, поліморфізм залишимо кухаркам © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель9

Моделі програмних систем © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель10

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель11 Елементи об'єктної моделі (за Г.Бучем 1 ) Абстрагування Інкапсуляція Модульність Ієрархічність Типізація Паралелізм Збережність 1) Г.Буч, Объектно-ориентированный анализ и проектирование, Бином, 1998

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель12 Абстрагування Абстракція виділяє істотні характеристики обєкту, що відрізняють його від усіх інших видів обєктів і в такий спосіб визначає його концептуальні межі з точки зору спостерігача.

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель13 Інкапсуляція Інкапсуляція це процесс розмежування елеметів обєкту, що визначають його будову і поведінку з метою відокремлення контрактних зобовязань абстракції від їх реалізації.

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель14 Модульність Модульність це властивість системи, яку розкладено на внутрішньо звязані, але слабо повязані одне з одним частини. Модульність дозволяє зберігати абстракції осібно

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель15 Ієрархічність Ієрархія це упорядкування абстракцій за рівнями. Два види ієрархії: класів (is a: бути чимось); обєктів (part of: входити до чогось).

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель16 Типізація Типізація це засіб захисту від використання обєктів одного класу замість іншого, або принаймні спосіб управління цим використанням. Статичне (раннє) vs. динамічне (пізнє) звязування імен з типами. Успадкування + пізнє звязування = поліморфізм

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель17 Паралелізм Паралелізм це властивість, що відрізняє активні обєкти від пасивних Паралелізм дозволяє різним об'єктам функціонувати одночасно

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель18 Збережність Збережність це властивість обєкту існувати в часі, переживши процес, який його породив, та (або) у просторі, переміщаюсиь за межі свого адресного простору.

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель19 Об'єкт Обєкту властиві стан, поведінка та ідентичність; структура і поведінка подібних обєктів визначаються спільним для них класом.

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель20 Клас Клас це множина обєктів, що мають спільну структуру і поведінку.

Ієрархія класів Успадкування - це таке відношення між класами, при якому один клас повторює структуру і поведінку іншого класу (поодиноке успадкування ) або інших класів (кратне успадкування ). © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель21 Студент теж людина!

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель22 Схема будови класу class T { //Конструктор створює нову ідентичність T(T1,…,Tn); T(const T&); //Можливий варіант: T(T&); але не Т(Т) //Копіювальне присвоєння не створює нової //ідентичності T& operator=(const T&); //Деструктор видаляє ідентичність ~T(); };

ПОВТОРИТИ © 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель23

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель24 Канонічні форми Арифметичних операцій const T& operator op (const T&) const; const T& operator op (const T&,const T&); Копіювального присвоєння T& operator= (const T&); T operator= ( T&) T& operator= ( T) T operator= ( T)

© 2006 Бублик В.В. МООП. Лекція 1. Об'єктна модель25 Властивості конструкторів Копіювання Конвертори Проект рядків символів