Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»



Pdf көрінісі
бет115/466
Дата20.07.2022
өлшемі3,66 Mb.
#37798
түріПрограмма
1   ...   111   112   113   114   115   116   117   118   ...   466
Байланысты:
pavlovskaia-jogargy-dengeili

for(j = 0; j<10; j++){
// екі бет код 
} // for(j = 0; j<10; j++) 
} // for(i = 0; i<10; i++) 
} // while(gets(s)) 
} // while(1)
Бір жолға бірнеше операторларды орналастырмаған жөн. Орыс немесе 
қазақ тіліндегі сияқты, тыныс белгілерінен кейін бос орындар қойылуы 
керек:
f=a+b; // нашар! f = а + b; болғаны дұрыс
С++ тілінде программалау жəне программаларды жобалау бойынша 
көптеген нақты ұсыныстар Ален И. Голубтың [9] кітабында келтірілген. 
Б. Страуструптың 1000 беттік кітабын [17] оқи отырып, одан көптеген қызықты 
мəліметтер алуға болады. Қорытындылай келе, осы кітаптан бір цитат келтіре 
кетейік: «“С++ тілінде жақсы программаларды қалай жазуға болады?” де-
ген сұрақ “Жақсы ағылшын прозасын қалай жазуға болады?” деген сұрақпен 
үндеседі. Мұнда екі кеңес бар: “Не айтқың келетінін біл” жəне “Жаттыға түс. 
Жақсы стильге ұмтыл”. Осы екі кеңесті де С++ үшін де, ағылшын прозасы 
үшін де қолдануға болады жəне екеуін де ұстану қиын іс».


117
Программаны жобалау жəне тесттен өткізу
Мэрфи заңдары
Бəрі де оңай болып көрінгенмен, оңай істелмейді.
Бəрі де күтілген мерзімнен ұзаққа созылады.
Егер бір нəрсенің бүлінуі мүмкін болса, ол міндетті түрде бүлінеді.
Каллаганның Мэрфи заңдарына берген түсініктері
Мэрфи оптимист болған.
Программалау ісіне жаңадан бастама алған азаматтар, əсіресе студенттер, 
программаны көп жағдайда былай жазады: тапсырманы алған бойда компью-
терге отырады жəне бірден ойларына келген алгоритм үзінділерін кодтауды 
бастайды. Айнымалыларға бірінші кезекте ойға келетін 
a,
 b, c
сияқты немесе 
басқа да, шамалардың мазмұнына қарағанда, автордың сөздік қорын көбірек 
сипаттайтын атаулар береді. Талапкер құлшынысының алғашқы екпінін 
өшіріп, компьютер тоқтап қалғанда барып программалаушы үзіліс жасайды 
да, содан кейін жазылған кодтар түгел өшіріліп, жұмыс қайтадан басынан
басталады.
Жұмыс барысында мəліметтер құрылымдары бірнеше рет өзгеріске 
ұшырайды, функциялар күйгелектікпен өшіріліп, қайтадан басынан кодтала-
ды, ал оны модульдерге бөлу тек программа көлемін қарап шығу қиындаған 
кезде жасалады. Программаға түсініктемелер жазылмайды, ал мəтінді 
форматтау жайлы тіпті айтудың да қажеті жоқ. Жиі-жиі компилятордың, 
компьютердің жəне операциялық жүйенің дұрыс жұмыс істеп тұрғанына күмəн 
келтірі леді
1
.
Программа алғаш рет орындалу кезеңіне жеткенде, оған кездейсоқ мəндер 
енгізіледі, содан кейін экран бірқатар уақытқа шейін таңданып бақыланатын 
объектіге айналады. Мұндай программа, əдетте, автордың басқаруымен 
бастапқы мəліметтердің белгілі бір жиынында ғана «жұмыс істейді», ал 
программаға тіпті аз да болса өзгерістердің енгізілуі автордың өзіне деген 
сенімін жоғалтып, оның программалау процесін жек көріп кетуіне де алып 
келеді. 
Сіздің мақсатыңыз программалауға кəсіби түрде кірісуді үйрену бо-
лып табылады. Кəсіби маманның осындай программалауды жаңа бастау-
шы адамнан айырмашылығы оның алдына қойылған тапсырмаға толықтай 
жауап беретін программа жазуға қанша уақыт жұмсалатынын дəл бағалай 
алу мүмкіндігінде болады. Ол үшін «ақыл, талғам жəне сабырлылыққа»
2
қоса, тəжірибе қажет, сонымен қатар программалаушылар осы пəннің жарты 
ғасырдан астам даму мерзімінде қалыптастырған негізгі қағидаларын білу ке-
рек. Тіпті ең қарапайым программалар жазуға да белгілі бір тəртіпті ұстана 
отырып, ұйымдасқан түрде ден қою керек.
1
Міндетті түрде Билл Гейтс еске алынады.
2
Авторға Б. Страуструптың осы тұжырымы өте ұнайды, сондықтан ол кітапта екінші рет қайталанып тұр.


118
ЕСКЕРТУ
Программаны құрудың негізгі кезеңдері туралы айтудың алдында, оған қарағанда 
абстрактылы ұғымдар жайлы – əрбір программалаушы басшылыққа алуы тиіс қағидалар 
туралы – айтып кеткен жөн. Көбінесе программалаушылар өздерінің басты мақсаты 
пайдалы жұмыс істеу емес, жаңадан ерекше жұмыс істейтін алгоритмдерді ойлап табу 
деп есептейді, сол арқылы «дүкен алушыға емес, сатушыға арналған» деген қайғылы 
көзқарасты еске салады. Программалаушы өзінің оны пайдаланушы адам үшін жұмыс 
істейтіні жөнінде жəне белгіленген мерзімде сенімді программа құруды камтамасыз ететін 
топтың мүшесі екенін ұмытпауы тиіс.
Программалаудың құрылымдық тəсілі, жоғарыда айтылып өткендей, жо-
баны құрудың барлық кезеңдерін қамтиды, олар: спецификациялау, жобалау, 
нақты түрде программалау жəне оны тесттен өткізу, яғни тестілеу. Мұндайда 
алға қойылатын міндеттер – тек пайдалануға болатын құрылымдарды қолдану 
арқылы туындайтын қателер санын азайту, қателерді мүмкіндігінше ерте 
анықтау жəне оларды түзету процесін жеңілдету.
Төменде келтірілген программаны құру кезеңдері программалаушылар 
тобы арқылы жүзеге асырылатын көлемді жобалар жасауға есептелген. Көлемі 
шағын қысқа программалар жазу үшін əрбір кезең қысқарып жеңілдейді, бірақ 
кезеңдердің мазмұны мен реттілігі өзгермейді.


Достарыңызбен бөлісу:
1   ...   111   112   113   114   115   116   117   118   ...   466




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

    Басты бет