Модуль тақырыбы және модульдердің бір-бірімен байланысы

Модуль тақырыбы Unit қызметші сөзінен және одан кейінгі модуль атынан тұрады.Object Pascal тілінде дұрыс жұмыс істеу үшін үлкен программаларды жеңілдететін құралдарды қосу мүмкіндігі қарастырылған.Ол үшін бұл атау модульдің алғашқы мәтіні орналасқан дискілік файлды атымен сәйкес келуі тиіс.Мысалы, тақырып:

Unit Global болса,сәйкес модульдің алғашқы мәтіні Global.pas дискілік файылында орналасуы тиіс.Сонымен, модуль атауы оны басқа модульдермен және негізгі байланысу қызметін қамтамасыз етеді.Ол байланыс арнайы сөйлеммен

Uses ‹модульдер тізімі›

қамтамасыз етіледі.

Мұндағы Uses – қызметші сөз (пайдаланылады); ‹модульдер тізімі› - байланыс орнатылатын модульдер тізімі, олар бір-бірінен үтір арқылы ажыратылады.Мысалы,

Uses Windows, SysUtils, My Unit;

Егер Uses хабарлауы пайдаланылса, онда ол негізгі программаны бейнелеу бөлімін ашуы тиіс.Модульдер басқа модульдерді де пайдалануы мүмкін.Модульдегі Uses сөзі не Interfaсe , не Implementation сөзінен кейін бірден жазылады.

 

Интерфейстік бөлік

Интерфестік бөлік Interfase қызметші сөзінен кейін ашылады.Бұл бөлік модульдердің барлық глобальді объектілерін (типтер, тұрақтылар, айнымалылар және қосалқы программалар) хабарлаудан тұрады және олар негізгі программада немесе басқа модульде пайдаланылуы мүмкін.Интерфестік бөлікте глобальді қосалқы программаларды хабарлауда тек олардың тақырыбы көрсетіледі.Мысалы,

Unit Cmplx;

Interface

Type

Complex=record

Re, im: real;

End;

Function AddC(x, y: Complex): Complex;

Function MulC(x, y: Complex): Complex;

Енді басқа модульде Unit Cmplx;

сөйлемін жазатын болсақ, онда Complex типімен және Cmplx модулінен екі процедура AddC және MulC пайдалануға мүмкін болады.

 

Орындалатын бөлік

 

Орындалатын бөлік Implementation қызметші сөзінен басталады және интерфейстік бөлікте хабарланған қосалқы программаларды бейнеленуінен тұрады.Мұнда модуль үшін жергілікті объектілер – қосымша типтер, тұрақтылар, айнымалылар және қосалқы прогаммалар, сондай-ақ, белгілер хабарлануы мүмкін.

Модульдің интерфестік бөлігінде хабарланған қосалқы программаладың сипаттамасы орындалатын бөліктегі тақырыптың алдында тұруы керек, оған формалды айнымалылар тізімі жазылады.Егер қосалқы программаны типі толық түрде жазылатын болса, яғни формальді параметрлі тізімі мен нәтиженің хабарлануы жазылса, онда ол интерфейстік бөлікте жазылған тақырыппен сәйкес келуі тиіс.

Unit Cmplx;

Interfase

Type

Complex=record

Re, im: real;

End;

Function AddC(x, y: Complex): Complex;

Function MulC(x, y: Complex): Complex;

Implementation

Function AddC(x, y: Complex): Complex;

Begin

End;

Function MulC;

Begin

End;

End.

Орындалатын бөліктегі тақырыптың қайталануы толық, әрі нақты болуы қажет.Егер біз

Function AddC(x, y: Complex): Complex;

Begin

End;

Тақырыбын пайдалансақ, онда бізге интерфейтік бөлікте хабарланған функция тақырыбының сәйкес келмейтіндігі жөнінде хабарлайтын еді (екінші параметр У болуы қажет).