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

Объекттердің объекттері мен класстары

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

Объекттер арасындағы әрекеттестік басқа объекттерден сервистерге сұраныс жасау (әдістер шақыру) және керек болса, сервиске сүйеу болатын мәліметтерді айырбастау арқылы жүзеге асырылады. Сервистің жұмысы үшін мәліметтердің көшірмелері мен сервис жұмысының нәтижелері параметр ретінде жіберіледі. Объекттер арасындағы әрекеттестік синхронды және асинхронды бола алады, және әртүрлі түрлердің қауымдастықтардың көмегімен модельденеді. [16]

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

Параллельді орындалатын объекттерді құрайтын ағындар (threads) тетігі арқылы программалық жүйенің объектті-бағытталған құрылысын объекттер параллельді үрдістер болатындай келтіруге болады.

Параллельді объекттердің екі түрі бар:

  1. Серверлер. Мұнда объект әдістермен бірге параллель үрдіс ретінде болады. Әдістер сырттан келетін хабарлауларға (оқиға) жауап ретінде жіберіледі және басқа объекттермен байланысқан әдістермен параллель түрде орындалады.

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

Шақырушы мен шақырып алушы объекттері әртүрлі компьютерлерде орындалатын таратылған орталарда серверлердің маңызы зор болады. Активті объекттер уақыт аралығында күй-жағдайларды жаңартып отыратын объекттерде қолданылады.

Объекті-бағытталған жобалау үрдісі

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

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

  2. Жүйені пайдалану моделі – берілген жүйенің өзінің жанындағылармен өзара әрекетін көрсететін динамикалық модель.

Жүйе жанындағы моделді, жүйенің жалпы архитектурасының жай блок –схемасын беретін байланыс схемасы көмегімен көрсетуге болады (7.1 сурет).

мүше болып табылады

басқарылады

басқарады

    1. 7.1-сурет. Байланыс моделі.

UML[16] тілінің пакеттері көмегімен оны ішкі жүйелердің жиынтығы секілді төнкерілген түрде ұсынуға болады. Пакет – бұл модел элементтерін үлкенірек блоктарға ұйымдастыру әдісі, яғни бірыңғай бүтін ретінде манипуляциялауға рұқсат етеді.

Жақсы жобаланған пакет, бірігіп өзгеретін тенденциялары бар семантикалық жақын элементтерді топтастырады, мұнда құрама пакетке қатынау сырттан қатал бақыланады.

7.2 суретте мысал ретінде пакеттер көрсетілген. Олар классикалық үшдеңгейлі архитектураны ұйымдастырады.

“import” “import” “import”

    1. 7.2-сурет. Элементтер тобын моделдеу.

«Тұтынушы сервисі» пакетінің элементтері ақпараттардың кірісі мен шығысы үшін визуалды интерфейсті ұсынады. Ең жақсы технологиялық сипаттама болып, жүйені жобалау нұсқалары болып табылады. Мұнда әрбір пакет берілген пакеттің барлық ресурстарының жазбаларын құрайтын интерфейсті қосады және пакеттердің өзара әрекеті тек қана бұл интерфейс арқылы іске асады. Пакет ресурстардың жүзеге асу өзгерісі бұл жағдайда басқа пакеттерді жоғалтпайды. Тек қана интерфейстегі өзгеріс, берілген пакет ресурстарын қолданатын пакеттер өзгерісін қажет ете алады.

Келесі класстар мен пакеттер тобы ерекшеленеді:

  • Тұтынушы интерфейсі – интерфейс объектісін тұтынушымен жүзеге асыратын класс;

  • Интерфейс компаненттер кітапханасы – интерфейсті компаненттерді: терезе, батырмалар, белгілер және т.б жүзеге асыратын класс;

  • Басқару объектлері – пайдалану нұсқаларының сценариін жүзеге асыратын класс;

  • Тапсырмалар объектісі – жүйенің пәндікоблысын жүзеге асыратын класс;

  • Мәліметтер базасының интерфейсі – мәліметтер базасымен интерфейсті жүзеге асыратын класс;

  • Мәліметтер базасы;

  • Мәліметтердің базалық құрылымы – мәліметтердің ішкі құрылымын жүзеге асыратын класс, ягни бұтақтар, тізімдер секілді;

  • Қателерді өңдеу – нештатный жағдайларды өңдеуді жүзеге асыратын исключениелер класы.

Соңғы екі пакет, ереже бойынша, олардың элементі барлық пакеттерді қолдана алғандықтан глобальді болып табылады.

«Мәліметтер сервисі» пакетінің элементтері мәліметтер мен олардың жаңартылуына қатынасын қамтамасыздандырады. «Бизнес-сервисі» пакеті байланыстырушы орта болып табылады. Ол бизнес-тапсырманың орындалуына жауапты басқа элементтер мен кластарды өзіне тартып алады, соның ішінде бизнес-ереже, яғни тұтынушының сұранысына жауап ретінде деректерді манипуляциялау стратегиясын басқарады.

Моделдеу кезінде жүйе мен оның жанындағылардың өзара іс-әрекетіне UML тілінің абстракті тәсілі қолданылады. BU диаграммасы түріндегі банктің қарапайым моделі 7.3 суретте көрсетілген.

    1. 7.3-сурет. Банктегі қолдану нұсқаулар диаграммасы.

Қолдану нұсқауларын (Use Case) жазу үшін әртүрлі форматтар (шаблондар) қолданылады: шаблонның толық форматы, бос формат, екі колонкадағы формат, Rational Unified Process (RUP) және де Use Case бойынша танымал маман Элистер Коберн [6] әдістемесі.

BU тұтынущының қажеттілігіне сәйкес жүйенің тәртібін ұсынады, осыған орай класс идентификациялары, объектлер, операциялар, және объектлердің өзара әрекеттері орындалады. Мұндай ұсынулар үшін келесі таблицалар негізделеді [4]: қолдану варианты мен субъект бойынша қажеттіліктерді бөлу таблицасы; қандай да бір формат бойынша BU –ді аутентификациялау таблицасы; әрекеттерді негізгі және альтернативті ағындарда орнату таблицасы; класс-мәндер мен функционалды қажеттіліктердің сәйкестік таблицасы.