Дәріс uml class диаграммалары. Uml диаграммасында класс қалай бейнеленеді? Класстар арасындағы қатынас
Download 60.12 Kb.
|
Д ріс uml class диаграммалары. Uml диаграммасында класс алай бе
Класстар арасындағы қатынас
Бізді қоршаған объектілер өздігінен құрылмайды. Құстар ауаға сүйенетін қанаттары арқылы ұшады. Әрқайсымыз туыстық, профессионалдық және тағы басқа байланыстар арқылы яғни қатынастың әртүрлі типінде бір-бірімізбен байланыстымыз. Сол сияқты класстарда бір-бірімен байланысты. ОББ-ны толық меңгеру үшін, осы қатынастардың мағынасын түсініп, оларды идентификаттауды үйренуіміз керек. Объектілер бір-бірімен белгілі бір қатынаста болады. Осындай қатынастардың бірі- тәуелділік. Мұндай қатынастың мағынасын атынан білуге болады- бір объектінің класын жүзеге асыру басқа объектінің операциялар спецификациясына тәуелді болғанда тәуелділік пайда болады. Егер бұл класстың операция спецификациясы өзгерсе, онда бағынышты классқа да өзгертулер енгізуге тура келеді. Өмірден алынған қарапайым мысал келтірейік. Кейде қолымызға түскен видеоны ойнату мүмкін болмай жатады. Неліктен? Себебі компьютерде сәйкес кодектер орнатылмаған. Яғни медиаплеер программасымен жүзеге асатын «ойнату» операциясы кодекпен жүзеге асырылатын «декомпрессия» операциясына тәуелді. Егер «декомпрессия» операциясының спецификациясы өзгерсе, медиаплеердың кодын өзгерту қажет болады, әйтпесе ол кодекпен жұмыс жасай алмайды, тіпті болмағанда қателіктермен жұмысын аяқтайды. UML-де класстар арасындағы тәуелділік былай суреттеледі: Диаграммадағы тәуелділікті әрқашан бейнелей бермейтінін атап өткен жөн, олардың көрінісін модельді түсіну үшін маңызды болғанда ғана бейнеленеді. Обьектілердің арасындағы байланыстың басқа түрі - ассоциация. Бұл объектілердің арасындағы бірімен-бірі алмасу жасай алатын қарапайым түрі. Ассоциация объектілердің арасындағы байланыстың табиғатын көрсететін атауға ие бола алады. Осы атауда үшбұрышты маркер көмегімен оқу байланысының бағыты көрсетілуі мүмкін. Бірбағытты ассоциация нұсқағышпен белгіленуі мүмкін. Ассоциация бағытымен қатар, диаграммада біз байланыста әр класстың қандай қызмет атқаратынын көрсете аламыз. Сонымен қатар байланысқан обьектілер санын көрсете аламыз: Қызмет пен еселік(сандар) жайлы диаграммада бәрі түсінікті-адам жұмыс жасамауы мүмкін немесе бірнеше компанияда жұмыс істеуі мүмкін, ал компанияға тым болмағанда бір қызметкер қажет. Еселік жайлы. Ассоциация үш немесе одан көп класстарды біріктіруі мүмкін, бұл жағдайда ол n-ші деп аталып, түзулер қиылысында диаграммада көрсетілгендей ромб болып бейнеленеді: Ассоциация –обьектілер арасындағы «қарапайым байланыс» екенін айтып кеткенбіз. Шын мәнінде шынайы өмірде қарапайым байланыстар сирек кездеседі. Ассоциацияның түбін қарастырғанда класстар арасындағы қатынастардың күрделі екені түсіндіріледі. Мысалы, «бүтін-бөлшек» байланысы. Мұндай ассоциация түрі агрегаттау (тұтастандыру) ассоциациясы деп аталады. Бұл жағдайда бір класс жоғары мәртебеге (бүтін) ие болады және төменгі мәртебеден (статус) құралады. Сонымен қатар, қарапайым және композициялық агрегаттауды көрсетеді және оларды сәйкесінше агрегация және композиция деп атайды. Қарапайым агрегация бүтіннен ажыратылған бөлшек тіршілігін бүтінге тәуелді болмай жалғастыра береді деп болжайды. Композициялық агрегаттауда бүтін бөлігі бөлшектерге ие болғанда бөлшектердің өмір сүру уақыты бүтін бөлігінің өмір сүру уақытына сәйкес келеді, яғни бөлшек бүтінге тәуелсіз болып өмір сүре алмайды деп түсіндіріледі. Ассоциация түрлерінің мысалын және UML-де белгіленуін келесі диаграммадан көруге болады: Мысалдар бізге өте қарапайым және түсінікті сияқты. Винчестерді компьютерден суырып, жаңа компьютерге немесе USB-қалтаға орнатуға болады, яғни қатты дисктің тіршілігі жүйелік блокты тексерумен тоқтап қалмайды. Терезесіз кнопкалар жұмыс жасамайды, терезе жабылысымен кнопкаларда жойылады. Download 60.12 Kb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling