Основи подійно- та об’єктно-орієнтованого...

Preview:

Citation preview

Видавництво «Ранок»

2016/17 навчальний рік

Зимова сесія: 16 січня–28 січня 2017 р.

День 3

Видавництво «Ранок»

Пилипчук Олександр Павлович, учитель інформатики та фізики Гаврилівської ЗОШ

І–ІІІ ступенів Теофіпольської райради Хмельницької області, вчитель-методист, співавтор підручника

Основи подійно- та об’єктно-орієнтованого програмування

Видавництво «Ранок»

Підручник«Інформатика. 8 клас»

авторів Бондаренко О. О., Ластовецького В. В., Пилипчука О. П., Шестопалова Є. А.

Видавництво «Ранок»

Аксіома

Ідучи на урок, учитель має знати більше, ніж передбачено програмою для учнів.

Видавництво «Ранок»

Ідучи на урок, учитель має знати більше, ніж передбачено програмою для учнів.

Парадокс

Програмою не передбачено вивчення ОСНОВ об’єктно-орієнтованого програмування.

Аксіома

Видавництво «Ранок»

Чому ООП?

Зростання обчислювальних можливостей комп’ютерів і відповідне зростання складності програм привели до так званої кризи програмного забезпечення: стало дуже складно розробляти і супроводжувати великі програмні проекти засобами процедурно-орієнтованого програмування.

ООП

Видавництво «Ранок»

ООП

ООП, завдяки модульності коду, значно підвищило ефективність розробки і супроводу великих програм.

Видавництво «Ранок»

ООП

ООП, завдяки модульності коду, значно підвищило ефективність розробки і супроводу великих програм.

Принципи ООП:

•програма — це сукупність об’єктів

Видавництво «Ранок»

ООП, завдяки модульності коду, значно підвищило ефективність розробки і супроводу великих програм.

Принципи ООП:

•програма — це сукупність об’єктів•кожен об’єкт належить до певного класу

ООП

Видавництво «Ранок»

ООП, завдяки модульності коду, значно підвищило ефективність розробки і супроводу великих програм.

Принципи ООП:

•програма — це сукупність об’єктів•кожен об’єкт належить до певного класу•опис класу включає як дані, так і програмний код, для оперування ними

ООП

Видавництво «Ранок»

ООП, завдяки модульності коду, значно підвищило ефективність розробки і супроводу великих програм.

Принципи ООП:

•програма — це сукупність об’єктів•кожен об’єкт належить до певного класу•опис класу включає як дані, так і програмний код, для оперування ними•новий клас може будуватися на основі вже наявного

ООП

Видавництво «Ранок»

ООП, завдяки модульності коду, значно підвищило ефективність розробки і супроводу великих програм.

Принципи ООП:

•програма — це сукупність об’єктів•кожен об’єкт належить до певного класу•опис класу включає як дані, так і програмний код, для оперування ними•новий клас може будуватися на основі вже наявного•об’єкти взаємодіють між собою

ООП

Видавництво «Ранок»

Приклад 1. Створимо клас для використання у програмі звичайних дробів.

Дроби

Видавництво «Ранок»

Приклад 1. Створимо клас для використання у програмі звичайних дробів.

Об’єкт цього класу:

• матиме чисельник і знаменник

Дроби

Видавництво «Ранок»

Приклад 1. Створимо клас для використання у програмі звичайних дробів.

Об’єкт цього класу:

• матиме чисельник і знаменник•створюватиметься на основі двох цілих чисел або рядка (наприклад, 7/12)

Дроби

Видавництво «Ранок»

Приклад 1. Створимо клас для використання у програмі звичайних дробів.

Об’єкт цього класу:

• матиме чисельник і знаменник•створюватиметься на основі двох цілих чисел або рядка (наприклад, 7/12)

•дозволятиме виконувати арифметичні операції над об’єктами такого типу

Дроби

Видавництво «Ранок»

Приклад 1. Створимо клас для використання у програмі звичайних дробів.

Об’єкт цього класу:

• матиме чисельник і знаменник•створюватиметься на основі двох цілих чисел або рядка (наприклад, 7/12)

•дозволятиме виконувати арифметичні операції над об’єктами такого типу

•дозволятиме виводити дріб у вигляді рядка

Дроби

Видавництво «Ранок»

Реалізація

Створивши проект, слід додати до нього новий модуль, у якому буде описано клас Tdrib.

Потім цей модуль можна буде підключати до інших модулів, де потрібно оперувати дробами.

Програмний код

Дроби

Видавництво «Ранок»

Інтерфейсний блок модуля

Дроби

Видавництво «Ранок»

Блок реалізації. Конструктори

Дроби

Видавництво «Ранок»

Блок реалізації. Інші методи класу

Операції віднімання, множення і ділення реалізуються подібно.

Дроби

Видавництво «Ранок»

Як бачимо, дані класу Tdrib (чисельник і знаменник) зберігаються разом із програмним кодом — методами класу.

Можна вносити зміни у програмний код модуля в розділі реалізації, вдосконалюючи алгоритм, виправляючи помилки. Доки не буде змінено інтерфейсний блок, модуль працюватиме правильно.

Розглянемо приклад його застосування.

Дроби

Видавництво «Ранок»

Модуль головної форми проекту

Підключаємо створений модуль для доступу до описаного в ньому класу Tdrib

Дроби

Видавництво «Ранок»

На формі мають бути кнопка Button1, текстове поле Edit1 і напис Label1

Модуль головної форми проекту

Дроби

Видавництво «Ранок»

Вона працює!

Дроби

Видавництво «Ранок»

Приклад 2. Гра «Хрестики-нулики»

Завдання

• Створити гру для двох гравців• Створити і використати клас «Ігрова кнопка» TGameButton — нащадка кнопки TButton• Створити клас «Поле для гри», який передає інформацію про результат гри через подію

Хрестики-нулики

Хрестики-нулики

Видавництво «Ранок»

Початок

Гра

Результат

Вікна програми

Хрестики-нулики

Видавництво «Ранок»

Клас «Ігрова кнопка»

Хрестики-нулики

Видавництво «Ранок»

Клас «Поле для гри»

Хрестики-нулики

Видавництво «Ранок»

Клас «Ігрова кнопка»

Хрестики-нулики

Видавництво «Ранок»

Створення ігрового поля у ході запуску програми

Хрестики-нулики

Видавництво «Ранок»

Обробка результатів гри

Хрестики-нулики

Видавництво «Ранок»

Зважаючи на зміст програми і обмежений час, відведений на вивчення теми у 8 класі, матеріал щодо основ ООП у підручнику зведено до мінімуму. Як і вимагається програмою, детальніше розглянуто програмування поведінки готових об’єктів.

Видавництво «Ранок»

Триває роботанад підручником

«Інформатика. 9 клас»

авторів Бондаренко О. О., Ластовецького В. В., Пилипчука О. П., Шестопалова Є. А.

Видавництво «Ранок»

Дякуємо за увагу!

Recommended