Лекция Информационные технологии



Дата02.10.2023
өлшемі134,68 Kb.
#112549
түріПрограмма

«Ақпараттық технологиялар» кафедрасы
Пән «Программалау технологиясы»
Тақырып 3-4. «Программалық жабдықтардың технологиялық сипаттамаларын анықтау»


Аға оқытушы Ергалиева Айжан Мұратқызы




Жалпы «технологиялық тиімділік» деп, программалық жабдықтың жобасының сапасын түсінеді. Программалық жабдықты жасауға және оны кейіннен жетілдіріп отыруға кететін еңбек және материалдық ресурстар тікелей жобамен (проектімен) байланысты болады. Барынша жан-жақты, сауатты құрылған жобаны кодтау, тестілеу, жӛндеу және және модификациялау да жеңіл болады. Программисттердің жинақталған тәжірибелері бойынша программалық жабдықтың технологиялылығы келесі факторлармен анықталады: - модельдің жан-жақты қарастырылғандығы (проработанность моделей); - модульдердің өзара тәуелсіздігінің деңгейі (уровень независимости модулей); - программалау стилі (стиль программирования); - кодтарды қайталап қолдану дәрежесі (степень повторного использования кодов).
Програрммалық жабдықтың моделі неғұрлым толық зерттелген, жан-жақты ескеріліп жасалған болса, онда жалпы есепке кіретін бөлек есептерді (подзадачаларды), мәліметтердің құрылымын және т.б. анықтау да соғұрлым нақтырақ болады, оларды жобалау және жүзеге асыру жеңіл болады, қателер азаяды. Ал модульдер неғұрлым өзара тәуелсіз болса, соғұрлым олардың жүзеге асырылуы, модификациялануы, олардағы қатені іздеу және т.б. жеңіл болады.
Программалау стилі деп программаны әрлеу стилін және құрылымдылығын түсінеді. Программаның құрылымдылығы оның оқылуына (читаемость программы) және программалауда қате жіберілмеуіне әсер етеді. ХХ ғасырдың 60-жылдарындағы кризис, яғни спагетти- программалар осы құрылымдылықтың болмауының нәтижесі.
Кодтардың қайта пайдаланылу дәрежесі, бұл бұрыннан бар кітапханаларды, кластарды, подпрограммаларды пайдаланумен және жаңадан жасалған кодтарды унификациялаумен анықталады. Бұл барлық жағдайда тиімді болмауы мүмкін, мысалы кодтарды қайта пайдалану жасанды түрде жоғарылатылса, онда жобаның технологиялылығы да соғұрлым төмендеуі мүмкін.
Программалық жабдықтың жалпы құрылымы анықталғаннан кейін, әдетте ұстаным таңдалынады: құрылымдық ұстаным немесе объектілік ұстаным немесе компоненттік ұстаным . Ұстаным анықталғаннан кейін, жоғарыдағы айтылған программаның жалпы құрылымын жеке компоненттерге декомпозициялау басталады, бұл декомпозиция мүмкін емес болғанға дейін жүреді. Мұндай декомпозицияның нәтижесі, құрылымдық ұстанымда – подпрограммалар мен модульдердің иерархиясы болып шығады, ал объектілік ұстанымды пайдаланатын декомпозиялауда, класстар түріндегі иерархия алынады. Модуль (Unit) – жеке автономды түрде компиляцияланатын программаның бірлігі. Модульдердің өзара тәуелсіздігі екі критериймен анықталды: жабысу(сцепление) және байланысу (связность).
Жабысу – бұл модульдердің бір-бірінен неғұрлым алшақтығын анықтайды. Егер бір модульде екінші модуль туралы ешқандай ақпарат берілмесе, онда олар тәуелсіз, ал олар бірбірі туралы ақпарат сақтайтын болса, онда жабысқан болып есептеледі. Жабысудың келесі түрлері анықталған:
мәндер бойынша (по данным);
- үлгі бойынша (по образцу);
- басқару бойынша (по управлению);
- жалпы мәліметтер орналасқан облыс бойынша (по общей областей данных);
- ішкі компоненттері, мәліметтері бойынша (по содержимому)
.
Егер «жабысу» жеке-жеке модульдердің бір-біріне алшақтық арақатынасын анықтаса, «байланысу» бір модуль ішіндегі программалық элементтердің ӛзара байланысу деңгейін анықтайды. Ӛзара тығыз байланыста болатын элементтерді бір модульге орналастырған тиімді болады, ал егер оларды әртүрлі модульдерге орналастырса модульдердің бір-біріне тәуелділігі артады, бұл қиынырақ болады. Әлсіз байланысқан элементтерді де бір модульде пайдалану оның технологиялылығын тӛмендетеді. Әзірге байланысудың келесі түрлері анықталған(кему дәрежесіне қарай):
  • функционалды (функциональная);

  • - тізбектей (последовательная);
  • ақпараттық (коммуникативная или информационная); - процедуралық (процедурная);
  • - уақытша (временная);
  • - логикалық (логическая);
  • - кездейсоқ (случайная).

Программалық жабдықты құруда қолданылатын негізгі екі әдіс:
- төменнен жоғары қарай жобалау (восходящий метод); - жоғарыдан төмен қарай жобалау(нисходящий метод). «Жоғары қарай жүру» әдісі бұл бірінші пайда болды, мұнда программаның ең төмені элементтері, сонан соң одан жоғары элементтері т.с. сияқты жасалады. Бұл әдістің тиімсіз жағы, кейін біріктірген кезде компоненттер өзара үйлеспей қалады, программа интерфейсі ең соңынан жасалады, яғни оны алдын-ала көрсетіп алу мүмкіндігі жоқ. Бұл әдіс өндірісте қолданылмайды, әдетте оқыту үшін қолданылады. «Төмен қарай» программалау мұнда программаның бірінші жоғары деңгейдегі компоненттері жобаланады, әрі қарай біртіндеп төменгі деңгейдегі компоненттері жасала береді, мұнда программаның жасалған бөлігін тестілеу үшін әлі жасалмаған төмендегі компоненттерді арнайы модульдермен («заглушка» программа) алмастыра тұрады.
Құрылымдық программалауда, жалпы есептеу процесі үш түрлі ұйымдастырылады: ызықтық, тармақталатын және қайталанатын. Бұл процесстерді жүзеге асыру үшін жоғары деңгейдегі программалау тілдерінде арнаулы басқарушы операторлар (if, while) қолданылады, ал бұрынғы төменгі деңгейдегі тілдерде басқару жолға көшу арқылы беріліп, спагетти- программалар шығатын болды. Сонымен, 1960 жылдардан бастап осы үш конструкцияны «базалық құрылымдар» деп қабылдау келісілген, оның жазылуының бірнеше түрлі нотациялары бар: блок-схема, псевдокод, Flow-формалар, Насси-Шнейдерман диаграммасы және т.б. . Мысалы, базалық құрылымдардың блок-схема түріндегі жазылуы (3.5- сурет) :

Назарларыңызға рахмет !

Назарларыңызға рахмет !



Достарыңызбен бөлісу:




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

    Басты бет