Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК_ТРПО перевод---ПОС kaz.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.32 Mб
Скачать

Жүйелік диаграммасы

  1. Жүйелік диаграммадан бастаңдар, олар қолдану нұсқаларына жататын бөлшектік талаптар немесе құрылысы үшін құрылған.

  2. Жобалау бөлшектердің басқа қосымшалармен байланыста болып тұрғанын қолдану нұсқалары арқылы көрсетіңіздер.

  3. Жүйелік диаграммалардың толық бөлшектілігін қамтамасыз етіңіздер.

    • Барлық объектілер мен класстар арнайландырылған болу керек;

    • Операцияларды анықтайтын әдеттегі тілдің орнына нақты функциялардың аттарын таңдаңдар.

Мәліметтер ағыны диаграммасы.[17]

  1. Бөлшектік талаптары мен (немесе) құрылысы үшін құрылған мәліметтер ағыны диаграммасын (МАД) жинаңыздар.

  2. Керек болса, үрдіс пен мәліметтер ағынын түсіндіру үшін қосымша МАД көрсетіңіздер.

  3. МАД басқа модельдердің қандай бөлігіне жататындығын анықтаңыздар (мысалы класстың моделінде).

  4. МАД-ның толық бөлшектілігін қамтамасыз етіңіздер:

    • Әрбір түйінде өтетін үрдісті анықтаңыздар;

    • Жіберілетін мәліметтердің типін анықтаңыздар;

    • Егер үрдістің анықтауы көп нақтылауларды талап етсе, диаграммадағы үрдістің түйіндерін ашыңыздар.

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

Бөлшектік жобалауында мәліметтер моделдері бөлшектеп көрсетіледі, содан кейін функциялар немесе класстар мен әдістер арқылы көрсетіледі.

Бөлшектік жобалаудың келесі қадамы – класстар, әдістер мен атрибуттардың арнайландылығы.

Класстың атрибуты мына түрде жазылады:

Көрініс аты [көптік] : түрі = бастапқы_мән {түсініктеме}

Көрініс – public, protected немесе private;

Көптік – қасиет даналардың саны;

Түсініктеме – атрибут туралы қосымша мәліметтер, мысалы, frozen түсініктемесі объектінің инициализациясынан кейін осы қасиеттің мәні өзгермейтінін көрсетеді.

Класстың операциялары мына түрде жазылады:

Көрініс аты (параметр_тізімі): нәтиженің_типі{түсініктеме},

Түсініктеме – оперциялар туралы қосымша мәліметтер, мысалы, leat полиморфтік емес оперция болатындығын білдіреді;

Параметрлер_тізімі келесі түрде жазылады:

Бағыты аты: түрі = мәні_үнсіз келісім бойынша,

Бағыт – in кіру параметрі, out – шығу параметрі, inout – өзгере алатын кіру параметрі.

Класстардың спецификациясын құруындағы пайдалы құралдарының бірі – CORBA IDL (Interface Definition Language – интерфейсті анықтайтын тіл). Ол класстар жиынтығы, класстардың атрибуттар мен функцияларды қамтамасыз ететін интерфейстерді бейнелейтін стандартты мәтіндік формат болып табылады.

Алгоритмдердің спецификациясы

Жүзеге асыратын функцияларды анықтағаннан кейін бастапқы кодты пайдаланып, қолданылатын алгоритм бейнеленеді. Осы бейнелеулердің құралдары ретінде блок-сұлбалар, псевдокод, диаграммалар болады.

Бөлшектік жобалауда жобалау үлгілері ерекше орын алады. Олар қолайлы шарттар кезінде қолдануы тиіс, болмаған жағдайда әдеттегі жобалауды күрлендіріледі.

Әр жобалау үлгілерде әдетте екі аспект болады. Бірінші аспект – класстар мен олардың байланысын бейнелейтін класстың жай моделі. Екінші аспект– үлгі әрекетінің тәсілі, оны бейнелеу үшін қолдану нұсқасының моделін қолдануға болады.

Бөлшектік жобалаудағы жобалау үлгісін пайдаланып, мысал келтірейік.

  1. Жобалау үлгілері арқылы шешілетін жобалау мәселелерімен танысайық.

    • Жобалау үлгілерінің креациондық, құрылыстық және әрекеттік арасындағы ерекшеліктерін анықтаңыздар;

    • Бөлшектік жобалаудың әрбір кезеңдерін қарастырыңыздар.

  2. Осы есептің неге жататындығын анықтаңыздар: күрделіні жасау, объектілердің күрделі қиыстыру құрылысын ұсыну немесе ол қосымшаның әрекеттік байланыста болады, яғни таңдалған объектінің күй тәртібімен бекітіледі.

  3. Осы есепті шешуіндегі жобалау үлгісі бар екендігін тексеріңдер.

  4. Артықшылықтар мен кемшіліктерін талдаңдар.

  • Артықшылығы жоғарғы иілгіштік болып саналады;

  • Кемшілігі күрделілік пен төмен нәтижелілік болып саналады.

Креациондық жобалау үлгілері – объектілерді құрудағы түрлендірулерді жасайды және олардың басқаруын қаматамасыз етеді. Креациондық жобалау үлгілеріне мыналар жатады: Singleton, Factory, Prototype, Abstract Factory, Builder.

Жобалаудың құрылымдық үлгілері – комплексті объектілерді көрсетеді, олар: ыңғайлы интерфейстермен объекттер түріндегі тізімдер, колекциялар және ағаштар. Құрылымдық үлгілерге мыналар жатады: Composite, Dicorator, Adapter, Facade, Flyweight және Proxy.

Іс-әрекетіне негізделген жобалау үлгілері – жұмыс барысындағы іс-әрекеті мен қосымшаларды басқарады, болмаған жағдайда әрбір іс-әрекет нұсқасын жобалау мен жүзеге асыруы бөлек істеуге тура келеді. Іс-әрекет үлгілеріне мыналар жатады: Interpreter, Observer, State, Iterator және Mediator. Бөлшектік жобалау орындауының нәтижесінде жобаның жоспары барлық қатынастар бойынша нақтылау болып табылады.

Негізгі әдебиеттер – 2[6 бөлім, 384-422 бет], 7[149-168, 225-241], 17[2 бөлім, 29-42 бет, 12 бөлім, 136-146 бет].

Бақылау сұрақтары:

  1. Бөлшектік жобалау дегеніміз не?

  2. Қолдану нұсқасы мен құрылыс бөлшектік жобалауда қандай орын алады?

  3. Бөлшектік жобалаудағы үрдістің типтік сұлбасы қандай болады?

  4. USDP сұлбасы бойынша жобалау туралы айтыңыз.

  5. Интерфейстерді қолданудағы жобалау туралы айтыңыз. Талапқа сай функционалдылығын пайдаланатын қосымшаның элементтерін қалай жобалау керек?

  6. Бөлшектік жүйелік диаграммалар және бөлшектік мәліметтер ағыны диаграммалары бөлшектік жобалауда қандай орын алады?

  7. Класстың нұсқалары деген не? Кейін қойылған шарттар бойынша функцияларды көрсететін нұсқалар туралы айтып беріңіз.

  8. Қандай жағдайларда блок-сұлбалар мен псевдокодтарды қолдану керек?

  9. Жобалау үлгілерінің үш түрі туралы және бөлшектік жобалау кезінде олар қандай әрекеттерді қамтамасыз етеді?

  10. C++ стандарты үлгілердің кітапханасы (STL) және бөлшектік жобалау туралы айтып беріңіз.

7- Дәріс. Объектті-бағытталған жобалау

Объектті-бағытталған жобалау – операциялар мен функциялардың орнына жүйенің өңдеушілері объектілер түсінігін қолданылатын стратегия. Объекттің күй-жағдайын анықтайтын операцияларды орындайтын және өзінің жеке күй-жағдайы бар объектілер байланысының программалық жүйеден құрылған.

Объектті-бағытталған жобалау үрдісі – объекттер класстарының жобалауы мен осы класстар арасындағы байланыстарды анықтайды. Жоба орындаушы бағдарлама ретінде көрсетілсе, барлық керек объектілер динамикалық класстар анықтамалары арқылы пайда болады.

Объектті-бағытталған жобалау – жүйені өңдеу объектті-бағытталған үрдістегі объектінің тек бір бөлігі, осында программалық қамтаманы құру үрдісі кезінде объектті-бағытталған әдіс қолданылады. Осы әдіс үш кезеңдердің өтуін талап етеді.

  • Объектті-бағытталған талдау – заттық облысының сөздігін құрайтын класстар мен объекттердің талдау әдісі болып табылады. Осында талдау объектілері нақты объектілер – мәндерді көрсетеді, сонымен қатар объектілердің орындалатын операциялар анықталады.

  • Объектті-бағытталған жобалау – объектті-бағытталған декомпозиция үрдісі және жүйенің логикалық және физикалық, статикалық және динамикалық жобалау модельдерін байланыстыратын жобалау әдістемесі болып табылады. Жүйенің түсіндірмесі класстар, объектілер, модульдер және үрдістер диаграммаларынан құрылады.

  • Объектті-бағытталған бағдарламалау – жүзеге асыру әдістемесі, қандай да бір класстың данасы болып келетін объектілердің жиынтығы, ал класстар мұрагерлік иерархиясын құрайды. Осы жағдайда әдетте динамикалық байланыс мен полиморфизммен мадақталатын класстар статикалық, объекттер динамикалық болады.

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

Объектті-бағытталған жүйелер – автономиялық және тәуелсіз объектілердің жиынтығы.