Файл: Бабич UML первое знакомство.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 05.12.2019

Просмотров: 6210

Скачиваний: 38

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

Ди ‡ „‡м м‡ по сле ‰о ‚‡ тель но с тей (sequence diagram)

Толь ко что мы по зн‡ ко ми лись с ‰и ‡ „‡м мой объ ек то‚, ко то ‡fl по к‡ -

зы ‚‡ ет от но ше ниfl меж ‰у объ ек т‡ ми ‚ не ко то ый мо мент ‚е ме ни, т. е. пе -
‰о ст‡‚ лfl ет н‡м сни мок со сто fl ниfl си с те мы, fl‚ лfl flсь ст‡ ти че с кой. 

Ди ‡ „‡м -

м‡ же по сле ‰о ‚‡ тель но с тей

ото б ‡ ж‡ ет ‚з‡ и мо ‰ей ст ‚ие объ ек то‚ ‚ ‰и н‡ ми -

ке

. Что зн‡ чит «‚ ‰и н‡ ми ке»? К‡к ‡з с этим н‡м и пе‰ сто ит ‡ зо б‡ть сfl.

В UML ‚з‡ и мо ‰ей ст ‚ие объ ек то‚ по ни м‡ ет сfl к‡к об мен ин фо м‡ ци ей

меж ‰у ни ми. Пи этом ин фо м‡ циfl пи ни м‡ ет ‚и‰ 

со об ще ний

. Ко ме то „о,

что  со об ще ние  не сет  к‡ кую-то  ин фо м‡ цию,  оно  не ко то ым  об ‡ зом  т‡к же
‚ли fl ет н‡ по лу ч‡ те лfl

. К‡к ‚и ‰им, ‚ этом пл‡ не 

UML пол но стью со от ‚ет ст -

‚у ет ос но‚ ным пин ци п‡м ООП

, ‚ со от ‚ет ст ‚ии с ко то ы ми ин фо м‡ ци он ное

‚з‡ и мо ‰ей ст ‚ие меж ‰у объ ек т‡ ми с‚о ‰ит сfl к от п‡‚ ке и пи ему со об ще ний.

Ди ‡ „‡м м‡ по сле ‰о ‚‡ тель но с тей 

от но сит сfl к ‰и ‡ „‡м м‡м ‚з‡ и мо ‰ей -

ст ‚иfl UML, опи сы ‚‡ ю щим по ‚е ‰ен че с кие ‡с пек ты си с те мы, но 

‡с см‡ т -

и ‚‡ ет ‚з‡ и мо ‰ей ст ‚ие объ ек то‚ ‚о ‚е ме ни

. Ду „и ми сло ‚‡ ми, 

‰и ‡ „‡м м‡

по сле ‰о ‚‡ тель но с тей  ото б ‡ ж‡ ет  ‚е мен ные  осо бен но с ти  пе е ‰‡ чи  и  пи -
ем‡ со об ще ний объ ек т‡ ми

.

Ис ку шен ный чи т‡ тель, ‚оз мож но, ск‡ жет, что не что по ‰об ное ‰е л‡ -

ет  и  ‰и ‡ „‡м м‡  пе це ‰ен то‚.  Д‡,  ‰ей ст ‚и тель но, 

‰и ‡ „‡м мы  по сле ‰о ‚‡ -

тель но с тей мож но (и нуж но!) ис поль зо ‚‡ть ‰лfl уточ не ниfl ‰и ‡ „‡мм пе це -
‰ен то‚

, бо лее ‰е т‡ль но „о опи с‡ ниfl ло „и ки сце н‡ и е‚ ис поль зо ‚‡ ниfl. Это

от лич ное се‰ ст ‚о ‰о ку мен ти о ‚‡ ниfl по ек т‡ с точ ки зе ниfl сце н‡ и е‚
ис поль зо ‚‡ ниfl! Ди ‡ „‡м мы по сле ‰о ‚‡ тель но с тей обыч но со ‰е ж‡т 

объ ек -

ты

,  ко то ые  ‚з‡ и мо ‰ей ст ‚у ют  ‚  ‡м к‡х  сце н‡ иfl, 

со об ще ниfl

,  ко то ы ми

они об ме ни ‚‡ ют сfl, и 

‚оз ‚‡ щ‡ е мые е зуль т‡ ты

, с‚fl з‡н ные с со об ще ни fl -

ми.  Впо чем,  ч‡ с то  ‚оз ‚‡ щ‡ е мые  е зуль т‡ ты  обо зн‡ ч‡ ют  лишь  ‚  том
слу ч‡е, ес ли это не оче ‚и‰ но из кон тек с т‡.

Те пеь о том, к‡ кие обо зн‡ че ниfl ис поль зу ют сfl н‡ ‰и ‡ „‡м ме по сле -

‰о ‚‡ тель но с тей. К‡к и ‡ нее, объ ек ты обо зн‡ ч‡ ют сfl пfl мо у„оль ни к‡ ми с
по‰ чек ну ты ми  име н‡ ми  (что бы  от ли чить  их  от  кл‡с со‚),  со об ще ниfl
(‚ы зо ‚ы ме то ‰о‚) — ли ни fl ми со стел к‡ ми, ‚оз ‚‡ щ‡ е мые е зуль т‡ ты —
пунк ти ны ми ли ни fl ми со стел к‡ ми. Пfl мо у„оль ни ки н‡ ‚е ти к‡ль ных
ли ни flх по‰ к‡ж ‰ым из объ ек то‚ по к‡ зы ‚‡ ют «‚е мfl жиз ни» (фо кус) объ -
ек то‚. Впо чем, ‰о ‚оль но ч‡ с то их не изо б ‡ ж‡ ют н‡ ‰и ‡ „‡м ме, ‚се это
з‡ ‚и сит от ин ‰и ‚и ‰у ‡ль но „о сти лfl по ек ти о ‚‡ ниfl.

По сколь ку текст пе ‰ы ‰у ще „о ‡б з‡ ц‡, мо жет быть, не слиш ком хо -

о шо ‚ос пи ни м‡ ет сfl н‡ слух, ‰‡ и луч ше, к‡к из ‚е ст но, «о‰ин ‡з у‚и -
‰еть, чем семь ‡з ус лы ш‡ть», пи ‚е ‰ем 

пи ме ‰и ‡ „‡м мы по сле ‰о ‚‡ тель -

но с тей 

(ис. 2.12):

Ду м‡ ем, смысл ‰и ‡ „‡м мы ‚пол не по нfl тен: сту ‰ент хо чет з‡ пи с‡ть сfl

н‡ не кий се ми н‡, пе‰ л‡ „‡ е мый ‚ ‡м к‡х не ко то о „о учеб но „о ку с‡. С

41

Лекциfl 2

Ви‰ы ‰и‡„‡мм UML


background image

этой це лью по ‚о ‰ит сfl по ‚е к‡ по‰ „о то‚ лен но с ти сту ‰ен т‡, ‰лfl че „о з‡ -
п‡ ши ‚‡ ет сfl спи сок (ис то иfl) се ми н‡ о‚ ку с‡, уже пой ‰ен ных сту ‰ен -
том (пе ей ти к сле ‰у ю ще му се ми н‡ у мож но, лишь по ‡ бо т‡‚ м‡ те и ‡л
пе ‰ы ‰у щих з‡ нfl тий — зн‡ ко м‡fl к‡ ти н‡, не п‡‚ ‰‡ ли?). По сле по лу че -
ниfl  ис то ии  се ми н‡ о‚  объ ект  кл‡с с‡  «Се ми н‡»  по лу ч‡ ет  ст‡ тус  по‰ „о -
то‚ лен но с ти,  н‡  ос но ‚е  ко то ой  сту ‰ен ту  со об щ‡ ет сfl  е зуль т‡т  (ст‡ тус)
е„о по пыт ки з‡ пи си н‡ се ми н‡. Кст‡ ти, об ‡ ти те ‚ни м‡ ние н‡ ‚ы зо‚ ме -
то ‰о‚. К‡к ‚и ‰и те, ‚се по сто!

Кус

42

UML: Пе‚ое зн‡комст‚о

Рис. 2.12

Рис. 2.13


background image

А  ‚от  что  опи сы ‚‡ ет  сле ‰у ю щ‡fl  ‰и ‡ „‡м м‡  (ис.  2.13),  по по буй те

‰о „‡ ‰‡ть сfl с‡ мо сто fl тель но. Толь ко, чу, не по‰ см‡ т и ‚‡ть ‚ ни же сле ‰у ю -
щий текст лек ции!

Ну  к‡к,  ‰о „‡ ‰‡ лись?  А  мы  ‰‡ же  и  не  со мне ‚‡ лись!  Ко неч но,  это  же

‡ бо т‡ обыч но „о ‰о мо ‚о „о лиф т‡, ко то ым мы поль зу ем сfl к‡ж ‰ый ‰ень!
Кст‡ ти,  по смо т и те  н‡  име н‡  объ ек то‚  —  ‚и‰ но,  что  это  уже  не сколь ко
иной стиль по ек ти о ‚‡ ниfl, чем ‚ пе ‰ы ‰у щем пи ме е. И н‡ ко нец, 

еще

о‰ин пи ме 

(ис. 2.14):

Уз н‡ е те с‚ой мо биль ный?

Ди ‡ „‡м м‡ ‚з‡ и мо ‰ей ст ‚иfl (ко о пе ‡ ции, 

collaboration diagram)

Ди ‡ „‡м мы по сле ‰о ‚‡ тель но с тей — это от лич ное се‰ ст ‚о ‰о ку мен -

ти о ‚‡ ниfl по ‚е ‰е ниfl си с те мы, ‰е т‡ ли з‡ ции ло „и ки сце н‡ и е‚ ис поль зо -
‚‡ ниfl; но есть еще о‰ин спо соб — ис поль зо ‚‡ть 

‰и ‡ „‡м мы ‚з‡ и мо ‰ей ст -

‚иfl

. Ди ‡ „‡м м‡ ‚з‡ и мо ‰ей ст ‚иfl 

по к‡ зы ‚‡ ет по ток со об ще ний меж ‰у объ -

ек т‡ ми  си с те мы  и  ос но‚ ные  ‡с со ци ‡ ции  меж ‰у  ни ми

и  по  су ти,  к‡к  уже

бы ло  ск‡ з‡ но  ‚ы ше,  fl‚ лfl ет сfl  ‡ль те н‡ ти ‚ой  ‰и ‡ „‡м мы  по сле ‰о ‚‡ тель -
но с тей. Вни м‡ тель ный чи т‡ тель, ‚оз мож но, ск‡ жет, что ‰и ‡ „‡м м‡ объ ек -

43

Лекциfl 2

Ви‰ы ‰и‡„‡мм UML

Рис. 2.14


background image

то‚ ‰е л‡ ет то же с‡ мое, — и бу ‰ет не п‡‚. 

Ди ‡ „‡м м‡ объ ек то‚ по к‡ зы ‚‡ -

ет  ст‡ ти ку

,  не кий  сни мок  си с те мы,  с‚fl зи  меж ‰у  объ ек т‡ ми  ‚  ‰‡н ный

мо мент ‚е ме ни, ‰и ‡ „‡м м‡ же ‚з‡ и мо ‰ей ст ‚иfl, к‡к и ‰и ‡ „‡м м‡ по сле -
‰о ‚‡ тель но с тей, по к‡ зы ‚‡ ет ‚з‡ и мо ‰ей ст ‚ие (из ‚и ни те з‡ не ‚оль ный к‡ -
л‡м бу) объ ек то‚ ‚о ‚е ме ни, т. е. 

‚ ‰и н‡ ми ке

.

Сле ‰у ет от ме тить, что ис поль зо ‚‡ ние ‰и ‡ „‡м мы по сле ‰о ‚‡ тель но с -

тей  или  ‰и ‡ „‡м мы  ‚з‡ и мо ‰ей ст ‚иfl  —  лич ный  ‚ы бо  к‡ж ‰о „о  по ек ти -
о‚ щи к‡  и  з‡ ‚и сит  от  ин ‰и ‚и ‰у ‡ль но „о  сти лfl  по ек ти о ‚‡ ниfl.  Мы,  н‡ -
пи ме,  ч‡ ще  от ‰‡ ем  пе‰ по чте ние  ‰и ‡ „‡м ме  по сле ‰о ‚‡ тель но с тей.  Н‡
обо зн‡ че ни flх,  пи ме нfl е мых  н‡  ‰и ‡ „‡м ме  ‚з‡ и мо ‰ей ст ‚иfl,  ‰у м‡ ем,  не
сто ит ос т‡ н‡‚ ли ‚‡ть сfl по ‰об но. З‰есь ‚се ст‡н ‰‡т но: объ ек ты обо зн‡ -
ч‡ ют сfl  пfl мо у„оль ни к‡ ми  с  по‰ чек ну ты ми  име н‡ ми  (что бы  от ли чить
их  от  кл‡с со‚,  по мни те?),  ‡с со ци ‡ ции  меж ‰у  объ ек т‡ ми  ук‡ зы ‚‡ ют сfl  ‚
‚и ‰е со е‰и нfl ю щих их ли ний, н‡‰ ни ми мо жет быть изо б ‡ же н‡ стел к‡ с
ук‡ з‡ ни ем н‡ з‚‡ ниfl со об ще ниfl и е„о по fl‰ ко ‚о „о но ме ‡.

Не об хо ‰и мость  но ме ‡  со об ще ниfl  объ flс нfl ет сfl  очень  по сто  —  ‚

от ли чие от ‰и ‡ „‡м мы по сле ‰о ‚‡ тель но с тей, 

‚е мfl н‡ ‰и ‡ „‡м ме ‚з‡ и мо -

‰ей ст ‚иfl не по к‡ зы ‚‡ ет сfl ‚ ‚и ‰е от ‰ель но „о из ме е ниfl

. По это му по сле ‰о -

‚‡ тель ность  пе е ‰‡ чи  со об ще ний  мож но  ук‡ з‡ть  толь ко  с  по мо щью  их
ну ме ‡ ции. В этом и со сто ит ‚е о flт н‡fl пи чи н‡ пе не бе же ниfl этим ‚и -
‰ом ‰и ‡ „‡мм мно „и ми по ек ти о‚ щи к‡ ми.

Но ‰‡ ‚‡й те же, н‡ ко нец, пе ей ‰ем к пи ме ‡м (ис. 2.15):

К‡к ‚и ‰и те, эт‡ ‰и ‡ „‡м м‡ опи сы ‚‡ ет (очень „у бо) ‡ бо ту пе со н‡ -

л‡ биб ли о те ки по об слу жи ‚‡ нию кли ен то‚: биб ли о те к‡ь по лу ч‡ ет з‡ к‡з

Кус

44

UML: Пе‚ое зн‡комст‚о

Рис. 2.15


background image

от кли ен т‡, по у ч‡ ет со ту‰ ни ку н‡й ти ин фо м‡ цию по нуж ной кли ен ту
кни „е,  ‡  по сле  по лу че ниfl  ‰‡н ных  по у ч‡ ет  еще  о‰ но му  со ту‰ ни ку  ‚ы -
‰‡ть кни „у кли ен ту. Р‡ зо б‡ лись? То„ ‰‡ еще пи ме (ис. 2.16):

Н‡ ‰е ем сfl, что и эт‡ ‰и ‡ „‡м м‡ не смо„ л‡ по ст‡ ‚ить ‚‡с ‚ ту пик. Ско -

ее ‚се „о, он‡ опи сы ‚‡ ет по цесс уп ‡‚ ле ниfl учеб ны ми ку с‡ ми (оче ‚и‰ -
но, пу тем со з‰‡ ниfl их из „о то ‚ых мо ‰у лей) ‰лfl не ко е „о учеб но „о цен т ‡.
К‡к ‚и ‰и те, ‚се по сто!

И,  н‡ ко нец,  еще  о‰ин  пи ме  (ис.  2.17),  ко то ый  ‰ол жен  ‚ы з‚‡ть

ле„ кое «‰е ж‡ ‚ю» у ‚ни м‡ тель но „о чи т‡ те лfl.

45

Лекциfl 2

Ви‰ы ‰и‡„‡мм UML

Рис. 2.16

Рис. 2.17