ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 05.12.2019
Просмотров: 6266
Скачиваний: 39
Ко неч но же! Ве‰ь это по сле‰ ний пи ме, ко то ый мы ‡с см‡ т и -
‚‡ ли, „о ‚о fl о ‰и ‡ „‡м м‡х по сле ‰о ‚‡ тель но с тей, — мо биль ный те ле -
фон! К‡к ‚и ‰им,
это по сто ‰у „‡fl фо м‡ пе‰ ст‡‚ ле ниfl
, к то му же, н‡
н‡ш ‚з„лfl‰, ме нее у‰об н‡fl. Впо чем, ‚ ко м‡н ‰е мо „ут ‡ бо т‡ть ‡з лич -
ные лю ‰и, с ‡з лич ны ми пе‰ по чте ни fl ми и осо бен но с тfl ми ‚ос пи fl -
тиfl, т‡к что к‡ кой ‚и‰ ‰и ‡ „‡мм ис поль зо ‚‡ть ‰лfl опи с‡ ниfl ло „и ки
сце н‡ и е‚ — ‰и ‡ „‡м мы по сле ‰о ‚‡ тель но с тей или ‰и ‡ „‡м мы ко о пе ‡ -
ции — е ш‡ть ‚‡м.
Ди ‡ „‡м м‡ со сто fl ний (statechart diagram)
Объ ек ты х‡ ‡к те и зу ют сfl по ‚е ‰е ни ем и со сто fl ни ем
, ‚ ко то ом н‡ хо -
‰flт сfl. Н‡ пи ме, че ло ‚ек мо жет быть но ‚о ож ‰ен ным, мл‡ ‰ен цем, е -
бен ком, по‰ о ст ком или ‚зос лым. Ду „и ми сло ‚‡ ми, объ ек ты что-то ‰е -
л‡ ют и что-то «зн‡ ют».
Ди ‡ „‡м мы со сто fl ний
пи ме нfl ют сfl ‰лfl то „о, что -
бы объ flс нить, к‡ ким об ‡ зом ‡ бо т‡ ют слож ные объ ек ты
. Не смо т fl н‡ то
что смысл по нfl тиfl «со сто fl ние» ин ту и ти‚ но по нfl тен, ‚се же пи ‚е ‰ем е„о
оп е ‰е ле ние ‚ т‡ ком ‚и ‰е, ‚ к‡ ком е„о ‰‡ ют кл‡с си ки и Zicom Mentor:
Со сто fl ние (state) —
си ту ‡ ци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 ‡ оп е ‰е -
лен но „о кл‡с с‡ — о‰ но „о объ ек т‡, пи чем объ ек т‡
е ‡к ти‚ но „о
, то есть
объ ек т‡, по ‚е ‰е ние ко то о „о х‡ ‡к те и зу ет сfl е„о е ‡к ци ей н‡ ‚неш ние
со бы тиfl. По нfl тие жиз нен но „о цик л‡ пи ме ни мо к‡к ‡з к е ‡к ти‚ ным
объ ек т‡м, н‡ сто fl щее со сто fl ние (и по ‚е ‰е ние) ко то ых обус ло‚ ле но их
по шлым со сто fl ни ем. Но ‰и ‡ „‡м мы со сто fl ний ‚‡ж ны не толь ко ‰лfl
опи с‡ ниfl ‰и н‡ ми ки от ‰ель но „о объ ек т‡. Они мо „ут ис поль зо ‚‡ть сfl ‰лfl
кон ст у и о ‚‡ ниfl ис пол нfl е мых си с тем
пу тем пfl мо „о и об ‡т но „о по ек -
ти о ‚‡ ниfl. И они ‰ей ст ‚и тель но с ус пе хом пи ме нfl ют сfl ‚ т‡ ком к‡ че ст -
Кус
46
UML: Пе‚ое зн‡комст‚о
‚е, ‚спом ним су ще ст ‚у ю щие ‚‡ и ‡н ты «ис пол нfl е мо „о UML», т‡ кие к‡к
UNIMOD, FLORA и ‰.
Но по „о ‚о им об обо зн‡ че ни flх н‡ ‰и ‡ „‡м м‡х со сто fl ний. Ску„ лен -
ные пfl мо у„оль ни ки пе‰ ст‡‚ лfl ют со сто fl ниfl, че ез ко то ые по хо ‰ит
объ ект ‚ те че ние с‚о е „о жиз нен но „о цик л‡. Стел к‡ ми по к‡ зы ‚‡ ют сfl пе -
е хо ‰ы меж ‰у со сто fl ни fl ми, ко то ые ‚ы 炇 ны ‚ы пол не ни ем ме то ‰о‚
опи сы ‚‡ е мо „о ‰и ‡ „‡м мой объ ек т‡. Су ще ст ‚у ет т‡к же
‰‚‡ ‚и ‰‡ псе‚ ‰о со -
сто fl ний: н‡ ч‡ль ное
, ‚ ко то ом н‡ хо ‰ит сfl объ ект с‡ зу по сле е„о со 片 ниfl
(обо зн‡ ч‡ ет сfl сплош ным куж ком), и
ко неч ное
, ко то ое объ ект не мо жет
по ки нуть, ес ли пе е шел ‚ не „о (обо зн‡ ч‡ ет сfl куж ком, об ‚е ‰ен ным ок -
уж но с тью).
Пи ‚е ‰ем пи ме по стей шей ‰и ‡ „‡м мы со сто fl ний (ис. 2.18):
Ду м‡ ем, з‰есь ‚се по нflт но без лиш них сло‚. А ‚от бо лее слож ный
пи ме (ис. 2.19):
47
Лекциfl 2
Ви‰ы ‰и‡„‡мм UML
Рис. 2.18
Рис. 2.19
З‰есь мы ‚и ‰им со ст‡‚ ное со сто fl ние, ‚клю ч‡ ю щее ‰у „ие со сто fl -
ниfl, о‰ но из ко то ых со ‰е жит т‡к же п‡ ‡л лель ные по‰ со сто fl ниfl. Мы не
„о ‚о и ли ‡ нее о том, к‡к ‚се это обо зн‡ ч‡ ет сfl, но ‚е‰ь и т‡к по нflт но —
это ‰и ‡ „‡м м‡ по хож ‰е ниfl ‡к‡ ‰е ми че с ко „о ку с‡ сту ‰ен том. Длfl то „о
что бы пой ти кус, сту ‰ент ‰ол жен ‚ы пол нить л‡ бо ‡ то ные ‡ бо ты, з‡ -
щи тить ку со ‚ой по ект и с‰‡ть эк з‡ мен. Все по сто!
А ‚от еще о‰ин пи ме (ис. 2.20):
Не со мне ‚‡ ем сfl, что ‚ы ле„ ко ‰о „‡ ‰‡ лись, что это з‡ ус т ой ст ‚о — ко -
неч но же, т‡й ме! Т‡ кой пи бо мо жет пи ме нflть сfl ‚ со ст‡ ‚е ‡з лич ных
е ле, н‡ пи ме, ‰лfl от клю че ниfl те ле ‚и зо ‡ по ис те че нии ук‡ з‡н но „о по -
ме жут к‡ ‚е ме ни. Ос но‚ ное е„о н‡ зн‡ че ние — кон толь ‚е ме ни (по ‚е -
к‡, не ис тек ли ук‡ з‡н ный по ме жу ток), но у не „о есть еще о‰ин е жим ‡ -
бо ты — ус т‡ но‚ к‡. По ис те че нии ук‡ з‡н но „о по ме жут к‡ ‚е ме ни или пи
«сбо се» ус т ой ст ‚о от клю ч‡ ет сfl. В кон це кон цо‚, о чем мы „о ‚о им — ‚ы
с‡ ми мно „о ‡з ус т‡ 퇂 ли ‚‡ ли слип-т‡й ме ‚ те ле ‚и зо е или ус т‡ 퇂 ли ‚‡ -
ли оп цию «Вы клю чить по з‡ ‚е ше нии» ‚ Nero Burning ROM!
Ди ‡ „‡м м‡ ‡к ти‚ но с ти (‰е fl тель но с ти, activity diagram)
Ко„ ‰‡-то н‡ уо к‡х ин фо м‡ ти ки ‚ шко ле мы и со ‚‡ ли блок-схе мы,
что бы н‡ „лfl‰ но изо б ‡ зить ‡л „о итм е ше ниfl не ко то ой з‡ ‰‡ чи. Дей ст -
‚и тель но, мо ‰е ли уfl по ‚е ‰е ние по ек ти у е мой си с те мы, ч‡ с то не ‰о ст‡ -
точ но изо б ‡ зить по цесс сме ны ее со сто fl ний, ‡ нуж но т‡к же ‡с кыть
‰е т‡ ли ‡л „о ит ми че с кой е ‡ ли з‡ ции опе ‡ ций, ‚ы пол нfl е мых си с те мой.
К‡к мы уже „о ‚о и ли, ‰лfl этой це ли т‡ ‰и ци он но ис поль зо ‚‡ лись блок-
схе мы или стук ту ные схе мы ‡л „о ит мо‚. В UML ‰лfl это „о су ще ст ‚у ют
Кус
48
UML: Пе‚ое зн‡комст‚о
Рис. 2.20
‰и ‡ „‡м мы ‰е fl тель но с ти
, fl‚ лfl ю щи е сfl ч‡ ст ным слу ч‡ ем ‰и ‡ „‡мм со сто fl -
ний. Ди ‡ „‡м мы ‰е fl тель но с ти у‰об но пи ме нflть ‰лfl ‚и зу ‡ ли з‡ ции ‡л „о -
ит мо‚, по ко то ым ‡ бо т‡ ют опе ‡ ции кл‡с со‚.
Д‡, кст‡ ти, н‡ ‰е ем сfl, ‚ы по мни те, что т‡ кое ‡л „о итм? Су ще ст ‚у ет
о„ ом ное ко ли че ст ‚о оп е ‰е ле ний это „о по нfl тиfl. Вот о‰ но из них:
Ал „о итм —
по сле ‰о ‚‡ тель ность оп е ‰е лен ных ‰ей ст ‚ий или эле -
мен т‡ ных опе ‡ ций, ‚ы пол не ние ко то ых пи ‚о ‰ит к по лу че нию же л‡ -
е мо „о е зуль т‡ т‡.
Ал „о ит мы ок у ж‡ ют н‡с по ‚сю ‰у, хоть мы и е‰ ко з‡ ‰у мы ‚‡ ем сfl об
этом. Вспом ни те ку ли н‡ ные е цеп ты или у ко ‚о‰ ст ‚‡ по экс плу ‡ т‡ ции
бы то ‚ых пи бо о‚! Ко неч но, оте че ст ‚ен ный по те би тель пи ‚ык жить
по пин ци пу «ес ли ни че „о не по мо „‡ ет, по чти те, н‡ ко нец, ин ст ук цию»,
но ф‡кт ос т‡ ет сfl ф‡к том: чем слож нее ус т ой ст ‚о или си с те м‡, тем ‚‡ж -
нее сто „о сле ‰о ‚‡ть ‡л „о ит му.
Обо зн‡ че ниfl н‡ ‰и ‡ „‡м ме ‡к ти‚ но с ти т‡к же н‡ по ми н‡ ют те, ко то -
ые мы ‚сте ч‡ ли н‡ блок-схе ме, хо тfl есть, к‡к мы у‚и ‰им ‰‡ лее, и не ко -
то ые су ще ст ‚ен ные от ли чиfl. С ‰у „ой сто о ны, но т‡ циfl ‰и ‡ „‡мм ‡к -
ти‚ но с ти очень по хо ж‡ н‡ ту, ко то ‡fl ис поль зу ет сfl ‚ ‰и ‡ „‡м м‡х со сто fl -
ний. Но, н‡ ‚е ное, луч ше бу ‰ет по сто по к‡ з‡ть пи ме (ис. 2.21):
49
Лекциfl 2
Ви‰ы ‰и‡„‡мм UML
Рис. 2.21
Мно „ие из н‡с имен но т‡к н‡ чи н‡ ют с‚ой ‰ень, не  ‰‡ ли? Об ‡ -
ти те ‚ни м‡ ние н‡ то, к‡к изо б ‡ же но п‡ ‡л лель ное пе ние и пи нfl тие ‰у -
ш‡, — н‡ обыч ной блок-схе ме это бы ло бы не ‚оз мож но! А ‚от еще пи -
ме(ис. 2.22):
И опflть ‚се по нflт но — это офом ле ние з‡ к‡ з‡ ‚ ин те нет-м‡ „‡ зи не!
Ну и н‡ пос ле ‰ок еще о‰ н‡ ‰и ‡ „‡м м‡ (ис. 2.23).
До „‡ ‰‡ лись, что он‡ опи сы ‚‡ ет? Смо же те от ли чить этот тип ‰и ‡ -
„‡мм? То„ ‰‡ по ш ли ‰‡ль ше!
Ди ‡ „‡м м‡ ‡з ‚е ты ‚‡ ниfl (deployment diagram)
Ко„ ‰‡ мы пи шем по „‡м му, мы пи шем ее ‰лfl то „о, что бы з‡ пу с к‡ть
н‡ ком пью те е, ко то ый име ет не ко то ую ‡п п‡ ‡т ную кон фи „у ‡ цию и
‡ бо т‡ ет по‰ уп ‡‚ ле ни ем не ко то ой опе ‡ ци он ной си с те мы. Ко по ‡ -
ти‚ ные пи ло же ниfl ч‡ с то те бу ют ‰лfl с‚о ей ‡ бо ты не ко то ой
ИТ-ин -
ф‡ ст ук ту ы
, х‡ нflт ин фо м‡ цию ‚ б‡ з‡х ‰‡н ных, ‡с по ло жен ных „‰е-
то н‡ се ‚е ‡х ком п‡ нии, ‚ы зы ‚‡ ют ‚еб-се ‚и сы, ис поль зу ют об щие е -
су сы и т. ‰. В т‡ ких слу ч‡ flх не пло хо бы иметь
„‡ фи че с кое пе‰ ст‡‚ ле ние
Кус
50
UML: Пе‚ое зн‡комст‚о
Рис. 2.22