Microsoft Office Access деректер қорын басқару бағдарламасы



бет12/22
Дата14.11.2022
өлшемі207.67 Kb.
#464842
түріБағдарламасы
1   ...   8   9   10   11   12   13   14   15   ...   22
кенселик косымша

Құрылымдық программалау
Модульді программалау кезінде мынаны ескерген жөн, бағдароама тек компьютерге ғана емес, адамға да түсінікті болуы керек: модульді тексеретін тұлғалар да, модульдің жөнге салуына (отладкасына) арналған тестті дайындаушы тест жасаушылар да, модульдің талап етілген өзгерістерін жүзеге асыратын – ПҚ жүргізушілер де модуль жұмысының логикасын көп рет жіктеуі керек. Программалаудың заманауи тілдерінде осы логиканы күштірек шатастыруы, сол арқылы оны адам үшін модульді қиынырақ түсіндірілетін етеді, осыған сәйкес оны сенімсіз немесе қиынырақ жанамалы (сопровождаемый) ететін жеткілікті программалар құралдары бар. Сондықтан да сәйкес тілдік құралдардың таңдауы үшін шараларды қолдану міндетті және программалаудың белгілі тәртібімен жүру керек. Бұған Дейкстра назар аударып, программаны басқарушы құрылымдардың бірнеше типінен тұратын композиция түрінде тұрғызуды ұсынды. Олар программа-ның жұмыс логикасын ұғынуды артырады. Тек осындай құрылымдарды қолданатын программалауды құрылымдық деп аталады.
Құрылымдық программалаудың негізгі құрылымдары мыналар болып табылады: алғасу, тармақтану және қайталану (сурет1). Бұл құрылымдардың компоненттері S,S1,S2 жалпыланған операторлары (өңдеу түйіндері) және Р шарты ретінде программалаудың қолданылатын тілінің қарапайым операторы (тиесілеу, кіріс, шығыс, процедураға жүгіну операторлары) басқарушы құрылымының композициясы болып табылатын бағдарлама үзіндісі.
Осы құрылымның әрбіреуі басқару бойынша тек бір кіріс пен бір шығысқа ие екені анық. Сол арқылы жалпыланған оператор да тек бір кіріс пен бір шығысты иеленеді.
Бұл құрылымдардың енді математикалық объектілер (құрылымдық прораммалаудың сәттілік себебін түсіндіреді) болып табылатыны өте маңызды. Әрбір құрылымдалынбаған программа үшін функционалды эквивалентті құрылымдық пограммаға құруға болатыны дәлелденген. Құры-лымдалған программа үшін программаларда кейбір қателерді анықтауға мүмкіндік беретін кейбір қасиеттерді математикалық дәлелдеуге болады. Бұл сұраққа жеке лекция арналатын болады.
Құрылымдық программалауды кейде «GO TO-сыз программалау» деп те атайды. Бірақ мұнда мәселе GO TO операторында ғана емес, оның ретсіз қолданылуында. Құрылымдық програмалауды программалаудың кейбір тілдерінде (мысалы ФОРТРАН) өте жиі іске асыру кезінде. Өту операторы (GO TO) құрылымдық программалаудың негізгі артықшылықтарын төмендетпей құрылымдық конструкциялардың жүзеге асырылуы (реализация) үшін қолданылады. Программаны «құрылымдық емес» өту операторы шатастырады, әсіресе жоғарыда орындалатын өту операторының модулінің текстінде орналасқан операторға өту болып табылады. Дегенмен де, кейбір қарапайым жағдайларда өту операторынан құтылу әрекеті өте үлкен құрылымдалған программаларға әкелуі мүмкін, бұл олардың нақтылығын жоғарылатады және модуль текстінде қосымша қателердің пайда болу қиындығын қамтиды. Сондықтан мүмкін болатын орындарда өту операторын қолданудан құтылуды ұсынуға болады, бірақ программаның нақтылық тәсілімен емес.
Өту операторын қолданудың жағымды жағдайына берілген цикл немесе берілген процедураның жұмысын «уақытынан бұрын» (досрочно) тоқтататын, яғни кейбір құрылымдық бірліктердің (жалпыланған операторлардың) жұмысын аяқтайтын және сол арқылы программаның құрылымдылығын тек локалды түрде бұзатын ерекше шарт бойынша циклдан немесе процедурадан шығуды жатқызуға болады.
Үлкен қиындықтарды (және құрылымдардың күрделіленуін) реакцияның пайда болатын ерекше (жиі қателік) жағдайларға құрылымдық реализациясы туындатады. Бұл жағдайда құрылымдық бірліктен уақытынана бұрын шығуды тек орындап қана қоймай, және бұл жағдайдың (мысалы, сәйкес келетін диагностиканың ақпараттық берілуі) қажеттіөңделуін жүзеге асыруды да талап етеді. Ерекше жағдайлардың өңдеушісі программа құрылымдарының кез-келген деңгейінде орналаса алады, ал оған жүгіну (обращение) түрлі төменгі деңгейлерден жүзеге асады. Техникалық көзқарас жағынан ерекше жағдайларға реакцияның келесі «құрылымдық емес» реализациясы анағұрлым тиімдірек блоып табылады. Ерекше жағдайлардың өңдеушілері сол не басқа құрылымдық бірліктердің соңында орналасады және әрбір осындай өңдеуші өзінің жұмысын аяқтаған соң өзі орналасқан құрылымдық бірліктен шығуды жүзеге асыратын жолмен программаланады. Мұндай өңдеушіге жүгіну берілген құрылымдық бірліктен(кез-келген құрылымдық бірлікті өзіне енгізе отырып) орындалады.


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




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

    Басты бет