Кұрылымдық бағдарламалау



Жұмыс түрі:  Реферат
Тегін:  Антиплагиат
Көлемі: 14 бет
Таңдаулыға:   
Мазмұны

Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 3
Негізгі бөлім
1. Дикомпозиция ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...4
1.1. Кұрылымдық бағдарламалау ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... 6
1.2. Қолданбалы бағдарламалық қамтамасыздандыру ... ... ... ... .. ... ... ... ... ... ...8
1.3. Бағдарлама құрылымы. Тілдің операторлары ... ... ... ... ... ... ... ... ... ... ... ... 11
1.4. Borland Delphi тілінің операторлары ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 13
Қорытынды ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...15
Пайдаланылған әдебиеттер ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .16

Кіріспе

Декомпозиция (Decomposition) -- есепті құрамды бөліктерге жіктеу; күрделі мәселелерді немесе құрылғыны (жүйені) күрделілігі шамалы бірқатар мәселерге немесе құрылғыларға (ішкі жүйелерге) бөлшектеу әдісі жөне оларды тізбектей шешу немесе модификациялау; 2) өңдеу объектісін (есеп, программа, жүйе мөліметтері) құрамды бөліктерге жіктеу. Жүйелік талдау мәселелерінің бірі болып табылады. Программалар үшін декомпозицияның келесі деңгейлерін анықтайды: версия, компонент, модуль, процедура, программа, макрокоманда.
Анализдің негізгі операциясы болып бүтінді бөліктерге бөлу б.т. Алға қойылған міндеттер, жүйелер, мақсаттар бірнеше бөлімдерге бөлінеді. Қажет болған жайғдайда бұл процесс қайталанып иерархиялық құрылымға әкеледі. Негізінде анализ объектісі қиын, сапасыз құрылымданған, нашар пішімделген болады, сондықтан декомпозицияны эксперт орындайды. Егер бір анализдің декомпоциясын екі түрлі экспертке жүктесек, тармақталған тізімдер бір бірінен өзгешеленеді. Эксперттердің құрған тармақтарының сапасы олардың бұл саланы толық меңгеруі мен докомпозицияның қай әдісін қолданғанына байланысты болады. Қалыпты жағдайда эксперт бүтінді оңай бөлшектей алады, тек ұсынылған бөлшектердің толықтылығы мен шығымсыздылығының дәлелдемесі қажет болғанда қиындық туады. Эксперт интуитивті әдістен алгоритмдік әдіске көшуде қарастырылып отырған жүйенің моделіне сүйене бөлшектейді. Сонымен, декомпозиция белгілі бір бөлшектелінетін бүтін ретінде қарастырылған модельдің көмегімен жүзеге асса, келесі туындаған сураққа жауап беруіміз қажет:
декомпозиция негізі ретінде қай жүйенің моделін алған жөн?
Нақтын қандай модельдерді алу қажет?
Әрбір анализ қай жүйені қарастыру қажеттігін айқындау үшін керек. Анализ объектісімен байланысты жүйе мен декомпозиция жүргізіліп отырған.
Дикомпозиция

Докомпозиция операциясы анализдің объектісін алынған модельмен сәйкестендіре қарап, сәйкестіктерін ерекшелейді. Сондықтан декомпозициялау барысында қанша бөлшек пайда болады деген сұраққа мынадай жауап беруге болады: негізге алынған модельде қанша элемент болса, сонша бөлшек болады. Декомпозицияның толық болуы бұл модельдің аяқталғандылығы. Айта кететін жай, кейде декомпозиция негізі ретінде толық модельдер жүйесін емес, оның бөлшектерін алып содан кейін модельдің өзін қарастырады. Дегенмен, жүйелік анализ практикасында декомпозиция объектісі ретінде көбінесе проблемалық жүйе, ал декомпозиция негізі ретінде проблеманы шеше алатын жүйе модельдері алынады. Енді декомпозиция негізіне нақты қандай модельдер алу керектігіне тоқталайық. Ең алдымен модельдердің көптігіне қарамастан формальді типтегі модельдердің көп еместігін ескеру қажет: бұл қара жәшік модельдері, құрылымдар, конструкциялар(құрылымдық схемалардың) - әрқайсысы статикалық немесе динамикалық нұсқада. Бұл қажеттілігіне қарай, толық немесе қысқартылған модельдер жиынтығын ұйымдастыруға мүмкіндік береді
Құрылымдық бағдарламалау идеясы 70 жылдары IBM компаниясында пайда болды, оны әзірлеуде атақты ғалымдар Э. Дейкстра, Х. Милс, Э. Кнут, С. Хоор қатысты. Құрылымдық бағдарламалау бағдарламалық өнімнің модульдық құрылымына және әртүрлі бағдарламалық модульдердің мәліметтерін өңдеу алгоритмдерінің типтік басқару құрылымдарына негізделген. Құрылымды басқару типтері:
реттілік;
альтернатива (таңдау шарты);
цикл.
Құрылымдық бағдарламалауға жататын бағдарлама әзірлеудің екі әдістемесі кең таралған:
жоғарыдан төменге бағдарламалау;
төменнен жоғарыға бағдарламалау.
Жоғарыдан төменге бағдарламалау бағдарламаны әзірлеудің бұл әдістемесінде әзірлеу мәселені шешу мақсатын анықтаудан басталып, одан кейін нақты бағдарламамен аяқталады. Ең алдымен ең ауқымды тапсырмаларды шешетін бірнеше ішкі бағдарламалар ерекшеленеді, одан кейін осы модульдердің әрқайсысы өз кезегінде басқа бірнеше басқа ішкі бағдарламаларға бөлініп барлық тапсырма жүзеге асқанша дейін жалғаса береді. Бұл жағдайда бағдарлама жоғарыдан төменге қарай құрастырылады, басты бағдарламадан ең төменгі ішкі бағдарламаларға дейін, сондай ақ әрбір деңгейде тек қарапайым инструкциялар, циклдар және шартты тармақталулар қолданылады. Төменнен жоғарыға бағдарламалау, бұл жалпы сызбаның жұмысы аяқталмай жатып, ішкі бағдарламаларды (процедуралар, функциялар) әзірлеуден бастайтын бағдарлама әзірлеудің әдістемесі. Бұл әдістеме алдыңғы әдістемеге қарағанда тиімсіз болып саналады, өйткені жиі қолайсыз нәтижелерге, қайта жөндеулерге және әзірлеудің уақытын созуға әкеліп соғады. Ішкі бағдаламалардың ең маңызды мінездемесі оларды қайта қолдану мүмкіндігі. Ішкі бағдаламалардың екі түрі бар процедуралар және функциялар. Олардың айырмашылығы, процедура операторлар тобын жай орындайды, ал функция сонымен бірге қандай да бір мәнді есептейді және оны басты бағдарламаға қайтадан жібереді (мәнді қайтарады). Ол мәннің арнайы типі болады. Ішкі бағдарламаның жұмысы мағыналы болу үшін, оған сыртқы бағдарламалардан мәліметтер алу керек. Мәліметтер ішкі бағдарламада параметрлер немесе аргументтер түрінде жіберіледі, олар әдетте айнымалылар сияқты оның бастапқы бөлігінде сипатталады. Ішкі бағдарламалар қажетті параметрлермен олардың жай атауын жазу арқылы шақырылады. Ішкі бағдарламалар оларды шақыру кезінде ғана белсенді болады. Ішкі бағдарламаның ішіндегі операторлар, егер олар нақты шақырылса ғана орындалады. Кейбір бағдарламалау тілдерінде ішкі бағдарламаларды өзінің ішінен шақыртуға болады. Мұндай тәсіл рекурсия деп аталады. Ол бағдарламаның бір орында тұрып қалуына әкелуі мүмкін.
Кұрылымдық бағдарламалау

Көлемі жағынан орташа бағдарламаларды құруда құрылымдық бағдарламалау қолданылады. Оның негізгі идеясы, оны шешу алгоритмы ағымдағы мәтінге анық көрінуі үшін шешілетін тапсырманың құрылымын бағдарлама құрылымы көрсетуі тиіс. Ол үшін жай үш оператордың көмегімен құрылатын бағдарлама құралдары ғана емес, сонымен қатар алгоритмнің құрылымын нақты бейнелейтін құралдар қажет. Осы мақсатпен бағдарламалауда ішкі бағдарлама ұғымы еңгізілген. Ішкі бағдарлама қажетті әрекетті орындаушы және ағымдағы кодтың басқа бөліктеріне тәуелді емес операторлар жиынтығы. Бағдарлама бірнеше кішкене ішкі бағдарламаларға бөлінеді, олардың әрқайсысы ағымдағы тапсырмамен қарастырылған әрекеттердің бірін орындайды.
Құрылымдық бағдарламалаудың артықшылықтары:
Бағдарламалардың сенімділігі артады (жақсы құрылымдау және жобалау арқылы бағдарлама тестілеуге жеңіл болады және іске қосуда қиындықтар туғызбайды);
Бағдарламаның тиімділігі артады (бағдарламаны құрылымдау қателерді тез табуға және түзетуге мүмкіндік береді, ал жеке ішкі бағдарламаларды басқаларына қарамастан өзгертуге болады);
Бағдарлама әзірлеудің уақыты және бағасы азаяды;
Бағдарламаны оқу жақсарады.
Сонымен, құрылымдық бағдарламалау бағдарламалық кешендерді әзірлеуде келесі принциптерге негізделеді:
Бағдарламалау жоғарыдан төменге жүзеге асуы тиіс;
Барлық жоба ішкі бағдарламаларға бөлінуі тиіс;
Ішкі бағдарлама үш негізгі құрылымнан тұруы тиіс, ол ретпен орындау, тармақталу (if, case) және қайталау (for, while, repeat);
Бағдарламаның кез келген нүктесіне көшу операторы қолданылмайды (goto);
Құжаттама бағдарламалаумен бірге бағдарламаға коментарийлермен бірге бір уақытта құрылуы тиіс.
Құрылымдық бағдарламалау алгоритмдік мінездемесі бар математикалық есептерді шығаруда тиімді қолданылады. Программалау процесін жақсартатын және кең қолданылатын әдістердің бірі - құрылымдық программалау.
Құрылымдық программалаудың 3 бөлігі (құраушысы) бар:
Модульдік программалау
Құрылымдық кодтау
Жоғарыдан төменге қарай жобалау
Модульдік программалау дегеніміз - программаны логикалық бөліктерге бөлу процесі. Программа бірнеше модульдерге бөлінеді және мына 2 мақсат орындалуы тиіс:
модулдің дұрыс болуы және оның контекстерден тәуелсіз болуы қажет;
модулдің ішкі жұмыстарын білмей тұра әр түрлі модулдерден программа құру мүмкіндігінің болуы қажет.
Мысал ретінде стандарт математикалық функциялардың есептелу программасын қарастыруға болады. Программист sin(x) функциясын программаның кез-келген жерінде қолдана алады және оған функцияның есептелуіне қай әдістің қолданып тұрғанын білудің қажеттілігі жоқ. Модуль өлшемі 60 жолдан аспауы керек және модульдер өзара тәуелсіз болуы керек. Байланысқан элементтерді бір модульге, байланыспаған элементтерді әр түрлі модульге жинау керек. Модульдерді қолдана отырып программа күрделілігін төмендетуге болады.
Pascal тілінде модуль процедуралар мен функциялардың көмегімен құрылады, Cи тілінде функциялардың көмегімен құрылады.
Құрылымдық кодтау деп программада басқарушы конструкциялардың - шартты операторлардың, циклдің (параметрлі, цикл-әзір, цикл-дейін) қолданылуын айтады.
Шартсыз көшу операторы программада сирек қолданылуы керек немесе шартты оператордың, циклдің көмегімен өзгертілуі керек. Программаны жоғарыдан төмен қарай жобалаудың өз иерархиялық құрылымы бар және қысқа есеп қойылымынан басталады. Одан кейін есеп бірнеше ұсақ ішкі есептерге бөлінеді. Ішкі есептердің өзі де ішкі есептерге бөлінуі мүмкін. Әр қадамда ішкі есептің орындайтын негізгі функциялары анықталуы керек. Бөлу процесі әр ішкі есеп қарапайым болғанға дейін, яғни әр ішкі есепке бір модуль сәйкес келгенше созылады.

Қолданбалы бағдарламалық қамтамасыздандыру.

Қолданушы бағдарламалауға жүгінбей-ақ, өзінің ақпараттық есептерін шеше алатын бағдарламалар қолданбалы бағдарламалар деп аталады. Қолданбалы бағдарламалық қаматамасыздандырудың жіктелуі: кəсіпорын мен ұйымның қолданбалы бағдарламалық қаматамасыздандыруы. Мысалы, қаржылық басқару, тұтынушылармен қатынас жүйесі, жабдықтау желісі. Бұл типке сондай-ақ кіші бизнес кəсіпорындарының ведомстволық бағдарламалық қаматамасыздандырулары, сонымен қатар үлкен кəсіпорындардың ішіндегі жаңа бөлімшелердің бағдарламалық қаматамасыздандырулары жатады; кəсіпорын инфрақұрылымының бағдарламалық қаматамасыздандыруы.
Кəсіпорынның бағдарламалық қаматамасыздандыруын қолдау үшін жалпы мүмкіндіктерді қамтамасыз етеді. Бұл деректер базалары, электрондық пошта серверлері, желіні жəне қауіпсіздікті басқару жəне т.б. ақпараттық қызметкердің бағдарламалық қаматамасыздандыруы. Ақпаратты құруда жəне басқаруда жеке қолданушылардың тұтынушылығына қызмет етеді. Бұл, əдетте, уақытты, ресурстарды, құжаттаманы басқару, мысалы, мəтіндік редакторлар.
Білім беруге арналған бағдарламалық қаматамасыздандыру. Ол медиа жəне көңіл көтеруге арналған бағдарламалық қаматамасыздандыруға жақын болып келеді, алайда одан айырмашылығы қолданушыны ң білімін тестілеу бойынша жəне материалдарды игеру прогресін қада ғалау бойынша на қты талаптарға ие болады. Көптеген білім беруге арнал ған ба ғдарламалы қ қаматамасыздандырулар өзіне бірлесіп қолдану ж əне к өп жа қтылы қ достастық қызметтерін қосады. Имитациялық бағдарламалық қаматамасыздандыру. Ғылыми зерттеулер, оқыту немесе көңіл көтеру мақсатында физикалық немесе абстрактілі жүйелерді симуляциялау үшін қолданылады. Медиа облысындағы аспаптық бағдарламалық құралдар. Коммерциялық немесе білім беру негізінде басқа қолданушылар үшін баспа немесе электрондық медиа ресурстарды жүргізетін қолданушылардың тұтынушылығын қамтамасыз етеді. Бұл - полиграфиялық өңдеу бағдарламалары, мультимедианы өңдеу бағдарламалары, HTML редакторлары, сандық анимация редакторлары, санды қ ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Бағдарламалау технологиясы
Бүтін сан түріндегі тип
STRUCT операторын қолдана отырып тестілеуші программа құру
Жүйелік бағдарламалау курсын оқытуда ком-пьютерді пайдаланудың алғышарттары
Таңдау операторлары - Шартты оператор және қосқыш
UNIX бағдарламалау ортасында жарамды
Қорғаныс істері жөніндегі департаментінің ақпараттық қауіпсіздік мәселелерін объектіге бағытталған бағдарламалау көмегімен жобалау
Жүйелік программалаудың негізгі ұғымдары мен анықтамалары
Жалпы білім беретін орта мектепте информатика курсының мазмұны
Бағдарламалау тілдері
Пәндер