Upload
nikita-pavliuchenko
View
7.023
Download
3
Embed Size (px)
Citation preview
Цар царів, король королів, тип типів
Об'єктно-орієнтоване програмування як спосіб упорядкування коду
Основи програмування мовою Python, лекція 7 Київ, 2015
"якась" програма...
11B7:0100 B82301 MOV AX,0123 ; Внести значення 0123h до AX
11B7:0106 8BD8 MOV BX,AX ; Переслати вміст AX до BX
11B7:0108 03D8 ADD BX,AX ; Додати AX і BX
11B7:010A 8BCB MOV CX,BX ; Переслати вміст BX до CX
11B7:010C 31C0 XOR AX,AX ; Очистити AX
11B7:010E CD20 INT 20 ; Кінець програми
підтримка програмного продукту
розширення функціональності
Процедурне програмування
• розділення коду на частини
• функції – не лише повторювані фрагменти
• винесення цих частин в окремі функції
• але будь-які фрагменти коду, призначені для досягнення певної мети
– процедури, функції, підпрограми
класи – ваши власні типи даних
об'єкти – окремі екземпляри цих класів
(змінні типу)
ви можете створити скільки завгодно
своїх класів та об'єктів
оператор pass позначає порожній
блок коду
в класах оголошуються поля –
вкладені змінні, де зберігатимуться дані
тут їм можна присвоїти початкові
значення або None – головне повідомити
інтерпретатору, що оголошується нова
змінна
всі об'єкти цього класу міститимуть
оголошені в класі поля, до яких можна
звернутися через крапку:
vova.name = 'Volodymyr'
print vova.name
також в класах оголошуються методи –
вкладені функції для обробки даних
вони так само доступні через крапку:
vova.birth_year = 1970
print vova.get_age()
для ініціалізації об'єктів даними прямо
під час створення оголошується
"конструктор"
за наявності інтерпретатор викликає
його одразу після створення
порожнього об'єкту
... дочірні класи можуть викликати методи
батьківських, не переписуючи їх
повністю, а лише доповнюючи;
для цього вони мають наслідуватися
від стандартного класу object
...
при наслідуванні класи можуть
перевизначати батьківські методи
таким чином різні класи можуть мати
однакові поля та методи, але
працювати по-різному
• побудова програми навколо даних
• виділення взаємодіючих сутностей
• високий рівень структурованості програми