logo
Delphi 7

1.3 Склад програми

Всі програми, що створюються в середовищі Delphi 7 складаються з двох основних частин: форми і модуля. Слід зауважити той факт, що кожному файлу форми обовязково відповідає файл з початковим текстом модуля, але файл с початковим текстом модуля не обовязково повинен мати відповідну йому форму.

З самого початку роботи над проектом середовище розробки фактично надає в розпорядження готову програму. Ця програма складається з одного вікна з заголовком Form 1. У вікні Form1 є системне меню, кнопки мінімізації, максимізації, закриття та відновлення. При виконанні команди головного меню RunRun чи натисненні F9 відбувається компіляція з послідуючим запуском проекту на виконання. Необхідно звернути увагу на одну з важливих особливостей Delphi, суть якої в тому, що всі стадії процесу розробки програми(написання, компіляція, компоновка, виконання, тестування і відлагодження) здійснюються в одному й тому самому середовищі розробки. Це значить, що легко можна переходити від розробки до виконання програми, що дозволяє швидко протестувати результат роботи.

Програмний код стандартного додатку генерується автоматично. На рисунку 2 зображена стандартна програма, що створюється при запуску Delphi і знаходиться в режимі виконання.

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

- відкомпільований файл модуля;

- відкомпільований файл проекту

- файли початкових текстів;

- файл проекту;

- файл групи проектів;

- файли ресурсів;

- файли конфігурації;

- резервні файли.

Рисунок 1 - Вікно, що автоматично створюється Delphi 7

Структура модуля

Для кожної форми, що включається в проект, створюється окремий модуль (файл з початковим текстом, що має розширення. PAS). Також може бути створений файл модуля, що не звязаний з формою. В файлі модуля зберігається код, що написаний в процесі розробки додатку. [4] Загальний код модуля має слідуючий вигляд:

unit // Імя Модуля;

interface // розділ інтерфейсу

Тут знаходяться описи процедур і функцій модуля, що можуть використовуватися іншими модулями.

uses // список використовуємих модулей

Тут перераховано всі основні модулі, що визначають функціональність додатку

const // в цьому розділі оголошуються константи

Тут оголошуються глобальні константи, що використані у модулі, з якими працюють процедури і функції даного модуля.

type // розділ типів

В секції описання типів описується клас відповідної форми і типи всіх констант, з якими працюють процедури і функції, що присутні у модулі

var // у цьому розділі оголошуються змінні

Тут оголошуються глобальні змінні, що використані у модулі, з якими працюють процедури і функції даного модуля.

implementation // розділ реалізації додатку

Тут безпосередньо прописуються тексти процедур і функцій модуля.

end.// кінець програми

Приклади описання функцій і процедур у загальному вигляді

При програмуванні в Delphi робота програміста міститься здебільшого в розробці процедур (підпрограм) обробки подій.

При виникненні події автоматично запускається процедура обробки події, яку повинен написати програміст. Задачу виклику процедури обробки при виникненні відповідної події бере на себе Delphi.

В мові Delphi основною програмною одиницею виступає підпрограма. Розрізняють два види підпрограм: процедури і функції. Як процедура, так і функція, являють собою послідовність інструкцій, призначених для виконання певної роботи. Для того, щоб виконати інструкції підпрограми, потрібно викликати цю підпрограму. Відмінність функції від процедури міститься в тому, що зі зміненням функції повязане значення, тому імя функції можна використовувати в виразах.

Описання функції має такий загальний вигляд:

function Імя функції (var Параметр 1:Тип 1;

var Параметр 2:Тип 2;

var Параметр j:Тип j): Тип;

const

{описання констант}

type

{початок розділу оголошення типів}

var

{описання змінних}

begin

{інструкції функції}

Result:=Значеня

еnd;

Описання процедури має такий загальний вигляд:

procedure Імя процедури (var Параметр 1:Тип 1;

var Параметр 2:Тип 2;

var Параметр j:Тип j);

const

{описання констант}

type

{початок розділу оголошення типів}

var

{описання змінних}

begin

{інструкції процедури}

еnd;

Структури керування роботою програми в мові Delphi

Вибір в точці розгалуження алгоритму наступного кроку програми може бути реалізований за допомогою інструкцій if і case. Інструкція if дозволяє вибирати один з двох можливих варіантів, а інструкція case - один з декількох.

Інструкція if дозволяє вибрати один з двох можливих варіантів розвитку програми. Вибір здійснюється в залежності від виконання умови.

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

Цикли. Алгоритми рішення багатьох задач є циклічними, це значить, що для досягнення результату визначена послідовність дій повинна бути виконана декілька разів.

Наприклад, програма контроля знань виводить питання, приймає відповідь, добавляє оцінку за відповідь до суми балів, потім повторює цю дію ще раз і ще раз, і так до тих пір, доки працівник, що тестується не відповість на всі питання.

Інший приклад. Для того, щоб знайти прізвище людини в перелісі, потрібно перевірити перше прізвище з переліку, потім друге, трете і т.д. до тих пір, доки не буде знайдено потрібне прізвище або не буде досягнуто кінця переліку.

Алгоритм, в якому є послідовність операцій (група інструкцій), яка повинна бути виконана декілька разів, називається циклічним, а сама послідовність - циклом.

У програмі цикл може бути реалізовано за допомогою інструкцій for, while і repeat.

Інструкція for, використовується в тому випадку, якщо деяку послідовність дій (інструкцій програми) потрібно виконати декілька разів, причому число повторень спочатку відомо.

Інструкція while використовується в тому випадку, якщо деяку послідовність дій (інструкцій програми) потрібно виконати декілька разів, причому необхідне число повторень під час розробки програми невідомо і може бути визначено тільки під час роботи програми. Типовими прикладами використання циклу while є обчислення з заданою точністю, пошук в масиві або в файлі.

Інструкція repeat, як і інструкція while, використовується в програмі в тому випадку, якщо необхідно виконати повторні обчислення (організувати цикл), але число повторень під час розробки програми невідомо і може бути визначене тільки під час роботи програми, тобто визначається ходом обчислень.

Оскільки в програмі, що розроблюється використовується тільки інструкція if, то її реалізація в загальному вигляді така:

Варіант 1:

if-then

If Умова

then

begin

{Інструкції, які виконуються, якщо умова істинна}

end;

Варіант 2:

if-then-else

If Умова

then

begin

{Інструкції, які виконуються, якщо умова істинна}

end

else

begin

{Інструкції, які виконуються, якщо умова невірна}

end;

В розроблюємій програмі використано інструкцію If Варіант 2, тобто if-then-else.