Структура програм Delphi

Будь-яка програма в Delphi складається з файлу проекту (файл з розширенням dpr) і одного або декількох модулів (файли з розширеннями pas). Кожен з таких файлів описує програмну одиницю Object Pascal.


Структура проекту

Файл проекту являє собою програму, написану мовою Object Pascal і призначену для обробки компілятором. Ця програма автоматично створюється Delphi і містить лише кілька рядків. Щоб побачити їх, запустіть Delphi і клацніть по опції Project / View Source головного меню [У попередніх версіях Delphi для перегляду коду проекту використовуйте опцію View / project Source. ]. Delphi покаже вікно коду із закладкою Project1, що містить такий текст:

program Projecti;

uses


Forms, Unit1 in “Unit1.pas” {fmExample};

{$R *.RES}

begin


Application.Initialize;

Application.CreateForm(TfmExample, fmExample);

Application.Run;

end.

У вікні коду жирним шрифтом виділяються так звані зарезервовані слова, а курсивом – коментарі (так само виділяються зарезервовані слова та коментарі у книзі). Як бачимо, текст програми починається зарезервованим словом program і закінчується словом end з точкою за ним. Зауважу, що поєднання end з наступного за нею точкою називається термінатором програмної одиниці: як тільки в тексті програми зустрінеться такий термінатор, компілятор припиняє аналіз програми і ігнорує частину, що залишилася тексту.

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

Коментарі, навпаки, нічого не значать для компілятора, і він їх ігнорує. Коментарі важливі для програміста, який з їх допомогою пояснює ті чи інші місця програми. Наявність коментарів у тексті програми робить її більш зрозумілою і дозволяє легко згадати особливості реалізації програми, яку ви написали кілька років тому. У Object Pascal коментарем вважається будь-яка послідовність символів, укладена у фігурні дужки. У наведеному вище тексті таких коментарів два, але рядок

{$R *.RES}

насправді не є коментарем. Цей спеціальним чином написаний фрагмент коду називається директивою компілятора (у нашому випадку – вказівка компілятору на необхідність підключення до програми так званого файлу ресурсів). Директиви починаються символом $, який стоїть одразу за відкриває фігурною дужкою.

Оскільки мова зайшла про коментарі, зауважу, що в Object Pascal в якості обмежувачів коментаря можуть також використовуватися пари символів (*, *) і / /. Дужки (*…*) використовуються подібно фігурних дужках тобто коментарем вважається в них знаходиться фрагмент тексту, а символи / / вказують компілятору, що коментар розташовується за ними і триває до кінця поточного рядка:

{Це коментар}

(* Це теж коментар *)

/ / Усі символи до кінця цього рядка складають коментар

Слово Program з наступним за ним ім'ям програми і крапкою з комою утворюють заголовок програми. За заголовком слід розділ описів, в якому програміст (чи Delphi) описує використовуються в програмі ідентифікатори. Ідентифікатори позначають елементи програми, такі як типи, змінні, процедури, функції (про елементи програми ми поговоримо трохи пізніше). Тут же за допомогою пропозиції, яке починається зарезервованим словом uses (використовувати) програміст повідомляє компілятору у тих фрагментах програми (модулях), які необхідно розглядати як невід'ємні складові частини програми і які розташовуються в інших файлах. Рядки

uses

Forms, Unit1 in “Unitl.pas” {fmExample};

вказують, що крім файлу проекту в програмі повинні використовуватися модулі Forms І Unit1. модуль Forms є стандартним (тобто вже відомим Delphi), а модуль Unit1 – новим, раніше невідомим, і Delphi в цьому випадку вказує також ім'я файлу з текстом модуля (in "uniti.pas") і ім'я пов'язаного з модулем файлу опису форми {fmExample}.

Власне тіло програми починається зі слова begin (почати) і обмежується термінатором end з точкою. Тіло складається з декількох операторів мови Object Pascal. У кожному операторі реалізується деякий дія – зміна значення змінної, аналіз результату обчислення, звернення до підпрограми і т. п. У тілі нашої програми – три виконуваних оператора:

Application.Initialize;

Application.CreateForm(TfmExample, fmExample);

Application.Run;

Кожен з них реалізує звернення до одного з методів об'єкта Application. Я змушений забігти вперед і хоча б коротко пояснити тільки, що введені терміни, які визначають важливі для Object Pascal поняття. Об'єктом називається спеціальним чином оформлений фрагмент програми, що містить у собі дані та підпрограми для їх обробки. Дані називаються полями об'єкту, а підпрограми – його методами. Об'єкт в цілому призначений для вирішення якої-небудь конкретного завдання і сприймається в програмі як неподільне ціле (іншими словами, не можна з об'єкта "висмикнути" окреме поле або метод). Об'єкти грають надзвичайно важливу роль у сучасних мовах програмування. Вони придумані для того, щоб збільшити продуктивність праці програміста і одночасно підвищити якість розроблюваних ним програм. Два головних властивості об'єкта – функціональність і неподільність – роблять його самостійною або навіть самодостатньою частиною програми і дозволяють легко переносити об'єкт з однієї програми в іншу. Розробники Delphi придумали для нас з вами сотні об'єктів, які можна розглядати як цеглинки, з яких програміст будує багатоповерховий будинок програми. Такий принцип побудови програм називається об'єктно-орієнтованим програмуванням (ООП). В об'єкті Application зібрані дані та підпрограми, необхідні для нормального функціонування Windows-програми в цілому. Delphi автоматично створює об'єкт-програму Application для кожного нового проекту. Рядок

Application.Initialize;

означає звернення до методу Initialize об'єкта Application. Прочитавши цей рядок, компілятор створить код, який змусить процесор перейти до виконання деякого фрагмента програми, написаного для нас розробниками Delphi. Після виконання цього фрагмента (програмісти кажуть: після виходу з підпрограми) управління процесором перейде до наступного рядка програми, в якій викликається метод CreateForm і т. д.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*