3 Обьектілі бағдарланған программалау тілін оқыту әдістемесі


Обьектілі-бағдарланған программалаудың ұстанымдары мен программалық жүйелерді құру кезеңдері



бет14/39
Дата12.09.2020
өлшемі0,88 Mb.
#77904
түріПрограмма
1   ...   10   11   12   13   14   15   16   17   ...   39
Байланысты:
Delphi программалау тілін оқыту әдістемесі

Обьектілі-бағдарланған программалаудың ұстанымдары мен программалық жүйелерді құру кезеңдері

Обьектілі-бағдарланған программалау негізіне келесі ұстанымдар кіреді: абстракциялану, мүмкіндікті шектеу, модульділік, иерархиялық, типтендіру, параллелизм, беріктік.

Әр ұстанымның қандай түсінік беретінін қарастырайық:

Абстракциялаау – мәселенің заттық саласында абстракцияны ерекшелеу үрдісі. Абстракция –обьектіні обьектілердің басқа түрінен ажырататын кейбір обьектілердің маңызды жиынтығы, осылайша берілген обьектінің кейін қарастыру және анализ жағынан ерекшеліктерін анықтайды. Қазіргі заманғы абстракция деңгейі барлық абстракция қасиеттерін бір программалық бірлікке біріктіруді көздейді.

Мүмкіндікті шектеу – бүтін ретіндегі бар сипаттамаларды қозғамайтын абстракцияны жүзеге асырудың жеке элементтерін жасыру. Мүмкіндікті шектеудің қажеттілігі абстракцияны сипаттаудағы екі бөлікті шектеуді болжайды:


  • Интерфейс-абстракцияны жүзеге асырудың қол жетімді элементтерінің жиынтығы (мінез-құлық пен жағдайдың негізгі сипаттамалары);

  • Жүзеге асырылу- абстракцияны жүзеге асырудың қол жетімсіз элементтерінің жиынтығы (абстракцияны ішкі ұйымдастырылуы және оның мінез-құлының жүзеге асырылу механизмдері);

Обьектілі-бағдарланған программалаудағы мүмкіндікті шектеу құрастырушыға мүмкіндік береді:

  • Қолданылатын абстракцияның жүзеге асырылу ерекшеліктеріне алаңдамай, жүйені кезеңмен құрастыруды орындау;

  • Дұрыс ұйымдастырылған жүйеде басқа обьектілердің өзгеруін қажет етпейтін жеке обьектілердің орындалуын жеңіл модификациялау.

Модульділік – жеке бөліктер (модульдер) түрінде орындалатын программалық жүйені құрастыру ұстанымы. Жүйенің декомпозициясын модульдерге орындауда модульдер арасындағы сыртқы байланыстар санын қысқарту арқылы логикалық байланысқан бөліктерін біріктірген дұрыс болады. Бұл ұстаным модульді программалаудан шыққан.

Иерархия – тізбектелген абстракциялар жүйесі.

Обьектілі-бағдарланған программалауда иерархияның екі түрі қолданылады:

«Бүтін/бөлік» иерархиясы кейбір абстракцияның қарастырылып жатқан абстракцияның бөліктері ретінде көрсетеді. Иерархияның бұл нұсқасы жобалаудың әр түрлі кезеңінде жүйені бөлу үрдісінде қолданылады.

«Жалпы/дербес» иерархиясы кейбір абстракцияның басқа абстракцияның дербес жағдайы болатынын көрсетеді. Күрделі класстар қарапайым класстарға базасына жаңа сипаттамаларды қосу жолымен құрылатын класстар құрылымын құру барысында қолданылады.



Типтендіру (типизация) - обьектілер қасиетіне қойылатын және әр түрлі типті абстракциялардың өзара алмасуын бөгейтін шектеулер. Қатал типизациясы бар тілдерде әр программалық обьект үшін сәйкес программалық обьектпен көптеген операцияларды анықтайтын тип жарияланады.

Типизация ұстанымын қолдану мыналарды қамтамасыздандырады:



  • Программалық обьектілерде қол жетімсіз операциялармен байланысты қателерді ерте айқындау;

  • Құжаттауды жеңілдету;

  • Тиімді кодты генерациялау мүмкіндігі.

Тип программалық обьектімен статикалық және динамикалық түрде байланыса алады (обьектінің типі тек программаның орындалу барысында анықталады).

Параллелизм – бірнеше абстракцияның бір уақытта екпінді жағдайда болатын қасиеті, яғни кейбір операцияларды орындау. Кейбір тізбектелген әрекеттердің бір уақытта орындалуын қажет ететін бірқатар есептер бар. Ондай есептерге, мысалы, бірнеше үрдістерді автоматты түрде басқаратын есептер жатады. Нағыз параллелизм ондай типті есептерді әр үрдісті жеке процессормен орындау мүмкіндігі болғандағы көппроцессорлы жүйелерде жүзеге асырылғанда жетеді.

Беріктік – берілген программалық обьектіні туғызған үрдістен тәуелсіз кеңістікте өмір сүру қабілеті бар абстракция қасиеті.

Мыналарды ажыратады:



  • Кейбір әрекеттердің аралық нәтижелерін сақтайтын, мысалы, есептеулерді, уақытша обьектілер;

  • Ішкі программаларды шақырудан оны аяқтағанға дейінгі өмір сүру уақыты саналатын ішкі программалардың ішінде болатын локальді обьектілер;

  • Программа жадыға жүктелгенше өмір сүретін ауқымды обьектілер;

  • Мәліметтері программаның жұмыс сеанстары арасында файлдардың сыртқы жадысында сақталатын обьектілер.

Жоғарыда аталған ұстанымдардың барлығы обьектілі-бағдарланған тілдердің әр түрлі версияларында жүзеге асырылған.

Обьектілі-бағдарланған программалауды қолданып, программалық жабдықтамаларды құру үрдісі төрт кезеңнен тұрады: талдау (анализ), жобалау, эволюция, түрлендіру (модификация).

Осы кезеңдерді қарастырайық:

Талдау. Талдаудың мақсаты – есепті барынша толық сипаттау. Бұл кезеңде есептің заттық саласының талдауы, құрылып жатқан жүйенің обьектілік декомпозициясы орындалады және обьектінің мінез-құлқысының маңызды ерекшеліктері анықталады. Талдаудың нәтижесі бойынша негізгі обьектілер мен қатынастар көрсетілетін программалық өнімнің құрылымды схемасы құрылады, сондай-ақ абстракцияларды сипаттау орындалады.

Жобалау. Мыналарды ажыратады:


  • Шешілетін мәселелер қолданылу шарттарынан (операциялық жүйенің немесе қолданылып жатқан құрылғының) тәуелсіз болатын логикалық жобалау;

  • Көрсетілген факторларды есептеуге тура келетін физикалық жобалау.

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

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



Жүйенің эволюциясы. Бұл қадамдық жүзеге асырылу мен класстардың жобаға қосылу үрдісі. Үрдіс негізгі программаны немесе болашақ программалық өнімнің жобасын құрудан басталады. Одан кейін болашақ жүйенің жұмыс істейтін прототипі құрылатын класстар жүзеге асырылады және қосылады. Ол сынаудан өтіп, бақыланады. Мысалы, ондай прототип ретінде программалық өнімнің негізгі интерфейсін жүзеге асыруды қосатын жүйе болуы мүмкін. Нәтижесінде біз талаптарды айқындау үшін тапсырыс берушіге көрсетілетін жұмыс істейтін өнімнің прототипін аламыз. Содан кейін жүйеге мысалы, кейбір меню пунктін жүзеге асырумен байланысты класстар тобы қосылады. Алыңған нұсқа жүйенің барлық мүмкіндіктері жүзеге асырылғанша сынақтан өтіп, бақыланады. Қадамдық жүзеге асырылуды қолдану тестілеу мен бақылауды жеңілдетеді.

Модификация (түрлендіру). Бұл жаңа функционалдық мүмкіндіктерді қосу немесе жүйенің бар қасиеттерін өзгерту үрдісі. Ереже бойынша, өзгертулер обьектілі-бағдарланған программалауды қолдану кезінде қиындықтарсыз жұмыс істеуге болатын интерфейске әсер етпей, класстардың жүзеге асырылуын қозғайды, себебі өзгертулер үрдісі тек локальды облысқа ғана әсер етеді. Интерфейсті өзгерту – аса күрделі мәселе емес, бірақ оның шешмі программаның басқа класстарын өзгертуді талап ететін обьектілердің өзара қатынасу үрдістерін қиыстырудың қажеттілігін алып келеді. Бірақ модульдік программалаумен салыстырғанда, интерфейстер бөліміндегі параметрлер санын қысқарту бұл үрдісті жеңілдетеді. Түрлендірудің қарапайымдылығы программалық жүйені өзгеріп жатқан пайдалану шарттарына жеңіл түрде икемдетуге мүмкіндік береді, бұл үлкен уақыттық және материалдық ресурстарға кететін жүйенің өмірлік уақытын ұзартады. Обьектілі-бағдарланған программалаудың ерекшелігі обьект немесе обьектілер тобы жеке жасалуы мүмкін, демек, олардың жобалануы әр түрлі кезеңдерде болуы мүмкін. Мысалы, интерфейсті класстар жүзеге асырылған болса, ал заттық саланың класстар құрылымы жаңадан айқындалып жатады. Әдетте, жобалау талдау үрдісінде заттық саланың қандай да бір үзіндісі толық сипатталғанда басталады.


Достарыңызбен бөлісу:
1   ...   10   11   12   13   14   15   16   17   ...   39




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет