- •Тема 1. Поняття про об’єктно-орієнтоване програмування. Поняття про об’єктно-орієнтоване програмування
- •Інструмент прискореної розробки програм
- •Список файлів проекту.
- •Деякі важливі принципи візуального програмування.
- •Вікна інспектора об'єктів, форми, модуля.
- •Лабораторна робота №1 «Робота в середовищі Delphi»
- •Тема 2. Основи об’єктно-орієнтованого програмування.
- •Лабораторна робота №2 «Створення типового вікна Windows-додатку. Властивості об’єктів форми.»
- •Теоретичні відомості:
- •I. Властивості об’єкту Форма.
- •Теоретичні питання:
- •Тема 3. Особливості ооп: основні концепції
- •Лабораторна робота №3 Робота з формою та компонентами Panel, Label, Edit, Button.
- •Лабораторна робота №4 Робота над проектом «Альбом картинок» (компонент Image вкладки Additional)
- •Тема 4. Структура програми Структура програми складається з:
- •Структура проекту
- •Структура модуля
- •Елементи програми
- •Елементи мови Алфавіт
- •Лексеми
- •Теоретичні питання
- •Лабораторна робота №5 Робота над проектом «Текстовий редактор»
- •Тема 5. Типи даних. Введення та виведення числових даних. Функції перетворення. Математичні функції
- •Прості типи
- •Порядкові типи
- •Цілі типи
- •Введення та виведення числових даних
- •Допомога 1.
- •Допомога 2.
- •Лабораторна робота №6. «Створення програм лінійної структури. Створення програми «Калькулятор»
- •В аріант завдання для вибору:
- •Тема 6. Оператори мови Delphi
- •Лабораторна робота №7 Створення найпростішого Windows-Додатка в Delphi, з використанням умовного оператора та оператора вибору.
- •1 Спосіб розв’язку квадратного рівняння
- •2 Спосіб розв’язання квадратного рівняння
- •Створити додатки за вказаним варіантом та записати блок-схему алгоритму:
- •Лабораторна робота № 8 «Створення програм з використанням операторів циклів»
- •Лабораторна робота № 9 «Розробка графічного інтерфейсу програми. Основні керуючі елементи.»
- •1. Програмування об’єкту – перемикач (tRadioButton).
- •Програмування об’єкту – прапорець (tCheckBox).
- •Тема 7. Масиви
- •Лабораторна робота № 10 «Структуровані типи даних»
- •Тема 8. Робота з файлами
- •Лабораторна робота №11 «Файлові типи даних»
- •Тема 9. Допоміжні алгоритми
- •Лабораторна робота № 12 «Створення програм з використанням процедур та функцій»
- •Тема 10. Работа з графікою та мультимедіа
- •Реалізація мультимедійних технологій. Відтворення відеокліпів
- •Внимание!
- •Лабораторна робота № 13 «Створення проекту «Побудова графіка функцій»»
- •Тема 11. Створення анімації в Delphi
- •Лабораторна робота № 14 «Створення проекту «Графічний конструктор»»
- •Лабораторна робота № 15 Створення багатовіконного проекту «Тест з географії»
- •Форма «Тестування» — модуль f_Test
- •Форма «Результат» — модуль fRes
- •Форма «Домопога» — модуль fInstr unit f__lnstr;
- •Тема 12. Організація роботи з таблицями та базами даних. Лабораторна робота №16. Розробка проекту «Рейтинг країн за результатами олімпійських змагань»
- •Лабораторна робота № 17 Створення проекту «Довідник по країнах»
- •Лабораторна робота № 18 Створення проекту «Телефонна книга»
- •Лабораторна робота № 19 Створення проекту «Довідник по тваринах»
- •Лабораторна робота № 20 Створення довідкової системи
- •Хід роботи
Теоретичні питання:
Які вікна відкриваються після запуску Delphi?
Що є в головному вікні Delphi?
Що таке подія? Що таке метод?
З яких файлів складається конкретний проект?
Що таке інспектор об’єктів? Як можна відкрити це вікно?
Що таке візуальне програмування?
Як запустити Delphi? Як створити виконуваний ехе-файл програми?
Які властивості форми ви знаєте?
Як зберегти створену форму?
Чи можуть збігатися назви модуля та проекту?
Якими способами можна запустити програму на виконання?
Які компоненти ви використовували?
Тема 3. Особливості ооп: основні концепції
Клас в Object Pascal, як специфічний тип даних, введений для спрощення розробки складних програм, поліпшення їхньої якості. Основними принципами поняття класу є: інкапсуляція, спадкування й поліморфізм.
Інкапсуляція – єдність всередині класу трьох складових його сутностей: полів, методів і властивостей. Наприклад, клас TForm - містить (інкапсулює) у собі все необхідне для створення Windows-Вікна. Завдяки інкапсуляції клас існує як самодостатній блок багато в чому ізольований від інших частин програми.
Спадкування – процес породження об'єктів-нащадків від об'єктів-батьків. При цьому до наявних властивостей і методів об'єкта-батька додаються нові, характерні тільки для об'єкта-нащадка класу. Видалити які-небудь елементи батька в об'єкті-нащадку не можна. Але можна від нащадка породити наступний об'єкт і в такий спосіб сформувати ієрархію класу або дерево об'єктів.
Поліморфізм – можливість реалізації однойменних, але алгоритмічно різних методів у класі-батьку й у класі-нащадку. Тобто метод батька перекривається (змінюється) у класі-нащадку, у результаті чого об'єкт-нащадок здобуває відмінну від батька функціональність.
Object Pascal є мовою програмування Delphi і являє собою об’єктно-орієнтоване розширення традиційного Pascal. Візуальне програмування на Object Pascal реалізується за допомогою бібліотеки візуальних компонентів Delphi - VCL. Алгоритмічне програмування в Delphi базується на основних засобах і прийомах мови Pascal.
Подія й метод - основні поняття ООП
Функціональність програми визначається в основному її реакцією на ті або інші події. У зв'язку із цим кожний компонент крім властивостей характеризується набором подій, на які він може реагувати.
Концепція ООП - об’єктно-орієнтованого програмування означає, що функціональність додатка визначається набором зв'язаних між собою завдань, кожна з яких стає самостійним об'єктом. Об'єкт має властивості (характеристики), методи, що визначають його поводження й події на які він реагує. Об'єкт завжди є екземпляром того або іншого класу, аналогічно змінним певного типу.
Клас в ООП, по суті, – це подальший розвиток концепції типу й поєднує в собі не тільки структури, розмір змінних, але й виконувані над ними операції (методи класу). Метод – підпрограма (процедура або функція), що є елементом класу. Опис методу схожий на опис звичайної підпрограми модуля.
Операційна система Windows використовує механізм контролю, що фіксує всі вироблені дії (зміна станів) апаратних пристроїв або так звані події: натискання клавіші клавіатури, натискання/відпуск кнопки миші, пересування миші, цокання таймера та ін. Відповідні повідомлення від системи передаються компонентам програми в процедурах обробки подій, і об'єкт одержує можливість реагування, відгуку на нього, індивідуалізації поводження. Таким чином, додаток знаходить задану функціональність.
Метод обробки події обов'язково повинен бути процедурою, що має один параметр, що при виклику методу містить інформацію про повідомлення, що надійшло. Заголовок методу розташовується в описі класу:
Н
Код метода знаходиться
в розділі
реалізації.
Ім’я
метода є складеним і
включає в себе
тип класу.
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
…
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Button1.Caption:=TimeToStr(Now); end; end.
У наведеному прикладі при натисканні на кнопку Button1 у назві кнопки відображається поточний час:
Об'єднання елементів керування
Групування об'єктів в Delphi здійснюється за допомогою контейнерів того або іншого виду. Наприклад, компонент RadioGroup - контейнер, що служить для об'єднання декількох залежних перемикачів.
Delphi пропонує набір універсальних контейнерів:
група GroupBox;
панель Panel;
область із прокручуванням ScrollBox;
фрейм (рамка) Frame.
GroupBox – задає прямокутну рамку, усередині якої можна розміщати компоненти Delphi. Заголовок рамки (властивість Caption) відображається в лівому верхньому куті. Переміщення за формою групи змушує автоматично переміщати й всі вкладені в неї об'єкти.
Panel – контейнер, у якому можна різним способом задавати фаски.
Панель
BevelInner
BevelOuter
BevelWidth
BorderWidth
Panel1
bvNone
bvRaised
1
0
Panel2
bvNone
bvRaised
5
0
Panel3
bvLowered
bvRaised
1
0
Panel4
bvNone
bvLowered
1
0
Panel5
bvNone
bvLowered
5
0
Panel6
bvRaised
bvLowered
1
0
Panel7
bvRaised
bvRaised
5
5
Panel8
bvLowered
bvLowered
3
3
Panel9
bvLowered
bvRaised
4
1
ScrollBox – вікно-контейнер з можливістю прокручування інформації. Якщо який-небудь компонент, що належить ScrollBox, видний не повністю, то автоматично можуть з'являтися смуги прокручування: горизонтальна, вертикальна або обидві одночасно.
Frame – контейнер компонентів, що на етапі розробки створюється також як і форма, але, на відміну від форми, може бути розміщений в іншому контейнері: формі або панелі.
Створення фрейму:
1. Команда меню File/New/Frame,
в результаті чого
в склад проекту
включається
новий фрейм.
2. Для разміщення
фрейму на формі
в Палітрі
компонентів вибирається
Frames і
поміщається в потрібне
місто форми.
В появившомуся діалоговому
вікні
Select frame
to insert
потрібно вибрати
потрібний фрейм із
перерахованих в списку.
Якщо п.1 (включення фрейму в проект) пропущений, Delphi при спробі розміщення фрейму на формі (п.2) видає повідомлення про помилку.
Часто використовуваний фрейм можна розмістити на Палітрі компонентів Delphi. Використовувати знову створений компонент Палітри можна звичайним способом поряд зі стандартними.
Для цього після
створення фрейма (см.
п.1) необхідно
визвати
команду контекстного меню вікна
фрейма Add To
Palette. В діалоговому
вікні
Component Template
Information ввести ім’я
фрейма, бажану сторінку
разміщення
та змінити
гриф (не більше
24х24 піксел, файл .bmp)
командою Change…
. OK.