Проект құрылымы Delphi проекті өзін программалық бірліктер жиынтығы модульдер ретінде ұсынады. Модульдердің біреуі-негізгісі программаның орындалуы басталатын инструкцияларды кірістіреді. Негізгі модуль толық Delphi да кірістірілген. Негізгі модуль толық Delphi да кірістірілген. Негізгі модуль кеңейтілуі .dpr типті файл. Негізгі модульді көру үшін мына команданы таңдау қажет Project →View Sourse
Негізгі модуль program сөзінен басталады және қасына проект атымен сәйкес келетін аты жазылады. Бұл ат пректіні сақтау барысында беріледі. Ол компилятор мен жасалатын орындалатын файлдың атын анықтайды. Содан соң uses сөзінен кейін қолданылатын модульдер аттары жазылады: Forms кітапханасы Project1 pas форма модулі.
{$R*.res} жолы – бұл файлдық ресурстарды қосу үшін компиляторға деректива. Ресурстық файл қосымшалар ресурстарын қосады (кірістіреді) : пиктограммалар, курсорлар, биттік бейнелер және т.с.с.
Мұндағы * - ресурс файл аты проект атымен сәйкес келетіндігін бірақ кеңейтілуі res болатындығын білдіреді.
Ресурстық файл текстік файл емес. Сондықтан оны текстік редактор арқылы көру мүмкін емес. Олар мен жұмыс істеу үшін арнайы бағдарламалар қолданылады. Мысалы, Resourse Work Shop. Сонымен қатар Delphi утилитасына кіретін Image editor (Tools →Image Editor) командасын таңдау арқылы көруге болады.
Негізгі модульдің орындалатын бөлімі begin және end сөздері арасында орналасады. Оның арасында біздің мысалда 4 оператор тұр. Жиі ол 3 болады. Олардың әрқайсысы Application объектісінің бір әдісін шақырады.
Applicationобъектісінде барлық Windows программалардың дұрыс функцияналдануы үшін керек мәліметтер және ішкі программалары жиналған. Delphi автоматты әр жаңа проект үшін объект программасын әзірлейді.
МұндағыInitializeәдісі арқылы Windows операциялық жүйенің басқарылуымен жұмыс істеу үшін керек бірнеше көмекші функцияларды іске асырады.
Application Initialize бұл жолды оқыған соң компилятор арнайы кодты жасайды. Ал код процессорды Delphi әзірлеушілер фрагментін жасауға шақырады.
CreateForm экранда негізгі форма терезесін әзірлейжі және көрсетеді.
Run әдісі Windows та қолданушының қимылдары туралы хабарламаларды алудың және өңдеудің көптеген циклдарын орындайды. Сонымен қатар программа (проект) негізгі модульден басқа кем дегенде бір форма модулін кірістіреді. Delphi да әр формаға өз модулі сәйкес келеді.
Модуль аты unit сөзінен басталады. Одан кейін оның аты жазылады. Дәл осы ат алдыңғы қосымшаның негізгі модулінің uses бөлімінде жазылған. Кез келген модульдің жалпы құрылымы былайшы жазылады.
Unit <аты>
interface
<интерфейстік бөлімі>
implementation
<орындалатын бөлімі>
unitialization
<инициализация бөлімі>
finalization
<аяқталу бөлімі>
end.
Интерфейс бөлімінде компиляторға модульдің қандай бөлігі басқа модульдердің қатынауға болатындығы хабарланады.
Мұндағы uses сөзінен соң осы модульмен қолдануға болатын барлық кітапханалық модульдер хабарланады. Сонымен қатар мұнда type сөзінен соң Delphi мен құрастырылған форма сипатталады.
Орындалу бөлімінде форманы қолдайтын локальды айнымалылар процедуралар және функциялар хабарланады. Бұл бөлім {$R*..dfm} директивасын хабарланудан басталады. Ол компиляторға орындалып жатқан форманы генерациялау процесі кезінде форма сипатталуын қолдану керек екенін көрсетеді. Форманың сипатталуы кеңейтілуі dfm болатын және аты модуль атымен сәйкес келетін файлда сақталады. Форманың сипатталу файлы Delphi ортасымен форманың сыртқы түрі негізінде регинацияланады.
{$R*..dfm} дерективасынан кейін форманы және оның компоненттерінің жағдайларын өңдеу процедуралары жазылады. Мұнда программист өзінің функцияларын және процедураларын кірістіре алады.
Инициализация және аяқталу бөлімдерінің жиі және оның басталуы unitialization және funalization сөздері мен қоса болмайды. Инициализация бөлімінде негізгі программаға басқарылуы әлі берілмеген кезде орындалатын операторлар орналастырылады және оның жұмысы дайындалады. Мысалы, онда жұмыс алдында керек файлдар ашылады, айнымалылар инициализацияланады және т.с.с.
Аяқталу бөлімінде негізгі программа аяқталған соң орындалатын операторлар жазылады. Егер бірнеше модульдерде инициализация бөлімдері болса, онда олар негізгі модульдің uses бөлімінде хабарланған ретімен орындалады. Егер бірнеше модульдерде аяқталатын бөлімдері болса, онда олар негізгі модульдің uses бөлімінде хабарланған ретінде кері ретпен орындалады.