Модулдер

Программа жұмысын ұйымдастыру үшін Delphi тілі модулдерді құрады және оларды пайдаланады.

Модул (unit) айнымалыларды, тұрақтыларды, ішкі программаларды және т.с.с. программаның түрлі элементтерін жазу үшін қолданылады. Әрбір модул pas кеңейтілуімен жеке файлда орналасады.

Модулді программа ретінде орындауға болмайды. Оны программада пайдалану үшін алдымен тіркеу керек. Ол үшін модулдің аты негізгі программаның uses бөлімінде көрсетіледі.

 

Объектілер және класстар

Бұл бөлімде біздер объектілі-бағытталған программалау негіздерін қарастырамыз. Инкапсуляция, мұрагерлік және полиморфизм түсініктерін талдаймыз. Класстарды, өрістерді, қасиеттерді, оқиғаларды, объектілер әдістерін қарастырамыз.

 

Объектілі-бағытталған программалау негіздері

Программалаудың пайда болуы және дамуы процедуралық программалау негізінде өрбіді. Программалау негізі алгоритім және мәліметтерді өңдеу процедурасы болды.

Объектілі-бағытталған программалау (ОБП) – түбірінде объект ұғымы жатқан программаларды жобалау әдістемесі. ОБП әдістемесін пайдаланып шешкен есеп, объек және оған жүргізілетін амалдар терминалогиясында қарастырылады, ал мұндай ұстамдағы программа объектілер және олардың арасындағы байланыстар жиынтығы ретінде анықталады.

Объектіге түсініктеме бермес бұрын, ең алдымен класс түсінігін қарастырайық.

Класс – түрлі типті мәліметтерден және оларға жүргізілетін амалдардан тұратын, пайдаланушы анықтайтын тип.

Сонымен класс дегеніміз – сипаттама, ал объект дегеніміз – бұл сипаттамаға сәйкес жасалынған зат. ОБП тілі пайда болмас бұрын мәліметтер және оларға жүргізілетін амалдар жеке элемент ретінде қарастырылған. Объектінің не екенін түсіну үшін жазбалармен жұмыс жасауды еске түсірсек болғаны. Жазбалар өрістерден тұрады. Өрістер түрлі типтегі мәліметтерден тұрады.

Объектілер – түрлі типті мәліметтердің жинағы. Объектідегі мәліметтер өрістер (fields) деп аталады және жазба өрістеріне ұқсас. Бірақ объектілердің жазбалардан ерекшелігі, қосымша сол объектінің өрістеріне қолданылатын процедуралар мен фукнциялардан тұрады. Бұл процедуралар мен функциялар әдістер (methods) деп аталады. Объекті өрістерін объект қасиеттері (properties) арқылы өзгертуге болады. Delphi-де объектінің әрбір қасиеті өріс мәнін беруге және оларды оқуға мүмкіндік беретін, өрістер және әдістер арқылы сипатталады (қамту әдістері). Қасиеттерді қосымшаны жобалау барысында объектілер инспекторы арқылы беруге, өзгертуге болады.

Объектілі-бағытталған программалаудың негізгі принциптеріне мыналар жатады:

· инкапсуляция;

· мұрагерлік;

· полиморфизм;

Инкапсуляция – класс ішінде, сыртқы пайдаланушыдан, мәліметтерді және оларды өңдеуші әдістерді біріктіру, жасыру.

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

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

 

Класстар

Класикалық Pascal тілі программистке өзінің күрделі типті мәліметтерін – жазбаларды (records) анықтауға мүмкіндік береді. Delphi тілі объектілі-бағытталған программалау концепциясын қолдай отырып, класстарды анықтауға мүмкіншілік жасайды. Класс – құрамына мәліметтер сипаттамсымен қоса, класс өкілі – объектімен жұмыс жасайтын процедуралар мен функцияларды сипаттамасы кіретін күрделі құрлым. Класстың жалпы түрі:

Tperson = class

private

fname: = string [15];

faddress: = string [35];

public

procedure Show;

end;

Класс мәліметтері өрістер деп, ал процедуралар мен функциялар - әдістер деп аталады. Келтіріген мысалдағы Tperson – класс аты, fname және faddress - өріс аттары, ал Show - әдіс (метод) атауы.