Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈ распрСдСлСнноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Π‘++Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 100

Автор Π₯ьюз ΠšΠ°ΠΌΠ΅Ρ€ΠΎΠ½

bool empty(void) const {return c.empty();}

size_type size(void) const {return c.size();}

value_type& top(void) {return c.back(); }

const value_type& top const {return c.back(); }

void push(const value_type& x) {c.push.back(x); }

void pop(void) {c.pop.back(); }

};

Класс stack ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ ΠΏΡƒΡ‚Π΅ ΠΌ задания Ρ‚ΠΈΠΏΠ° Container

stack < vector< T > > Stack;

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Ρ‚ΠΈΠΏΠΎΠΌ Container являСтся класс vector, Π½ΠΎ Π² качСствС класса Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ для интСрфСйсного класса stack (вмСсто класса vector) ΠΌΠΎΠΆΠ½ΠΎ использо-Π²Π°Ρ‚ΡŒΠ»ΡŽΠ±ΠΎΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹:

empty () size() back() push.back() pop.back()

Класс stack ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ сС ΠΌ античСски ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΉ интСрфСйс, Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ принятый для стСков.

БущСствуСт нСсколько способов отобраТСния интСрфСйса. Один ΠΈΠ· Π½ΠΈΡ… β€” ΠΊΡ€ΡƒΠ³, рядом с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ (Ρ‡Π°Ρ‰Π΅ β€” ΠΏΠΎΠ΄ Π½ΠΈΠΌ) записываСтся имя интСрфСйсного класса. Π­Ρ‚ΠΎΡ‚ способ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° рис. 10.5, Π°. Для отобраТСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ класса stack ΠΌ ΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ си ΠΌ воличСскоС ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ класса (с ΠΌ. рис. 10.5, Π±). Π—Π΄Π΅ΡΡŒ Π½Π°Π΄ ΠΈ ΠΌ Π΅Π½Π΅ ΠΌ класса отобраТаСтся ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ стСрСотипа << interface>>, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰ΠΈΠΉ, Ρ‡Ρ‚ΠΎ это β€” интСрфСйсный класс. Имя интСрфСйсного класса ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с Π±ΡƒΠΊΠ²Ρ‹ Β«IΒ», ΠΈ Ρ‚ΠΎΠ³Π΄Π° всС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ этого класса Π±ΡƒΠ»ΡƒΡ‚ Π·Π°ΠΌΠ΅Ρ‚Π½Π΅Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… классов.

Для отобраТСния ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ ΠΌ Π΅ΠΆΠ΄Ρƒ класса ΠΌ ΠΈ stack ΠΈ vector ΠΌ ΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ понятиС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. РСализация β€” это сС ΠΌ античСскоС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ классами, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ… ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Β«ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Β» (интСрфСйсный класс), Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ero выполняСт (класс Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ). Π’ нашС ΠΌ ΠΏΡ€ΠΈ ΠΌ Π΅Ρ€Π΅ класс stack ΠΎΠΏΡ€Π΅Π΄Π΅Π» я Π΅Ρ‚ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚, Π° класс vector Π΅Π³ΠΎ выполняСт. ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ отобраТаСтся ΠΎΡ‚Ρ€Π΅Π·ΠΊΠΎΠΌ ΠΏΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°ΠΌΠΈ классов с ΠΊΡ€ΡƒΠΏΠ½ΠΎΠΉ ΠΏΠΎΠ»ΠΎΠΉ стрСлкой, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Π½Π° интСрфСйсный класс, Ρ‚.Π΅. Π½Π° класс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ (рис. 10.5, Π²). Π­Ρ‚ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ читаСтся Ρ‚Π°ΠΊ: «Класс stack рСализуСтся классом vectorΒ». ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ интСрфСйсным классом ΠΈ Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠΌ (срСдством Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ) Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Β«Π»Π΅Π΄Π΅Π½Ρ†Π° Π½Π° ΠΏΠ°Π»ΠΎΡ‡ΠΊΠ΅Β» (рис. 10.5, Π³). Класс stack ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ классом vector, Π½ΠΎ ΠΈ классами list ΠΈΠ»ΠΈ deque .

Рис. 10.5. Бпособы прСдставлСния интСрфСйсного класса

ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, классы ΠΈ интСрфСйсы ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² (Ρ‚.Π΅. Π±Π°Π·ΠΎΠ²Ρ‹Ρ… элСмСнтов) ΠΏΡ€ΠΈ создании Π±ΠΎΠ»Π΅Π΅ слоТных классов ΠΈ интСрфСйсов. Π’ распрСдСлСнной ΠΈΠ»ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ систСмС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ сущСствованиС Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ислоТных структур, ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ… с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ структурами, Ρ‡Ρ‚ΠΎ создаСт объСдинСниС классов ΠΈ интСрфСйсов, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… вмСстС Π½Π°Π΄ достиТСниСм ΠΎΠ±Ρ‰ΠΈΡ… Ρ†Π΅Π»Π΅ΠΉ систСмы. Π’ языкС UML Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ называСтся сотрудничСством. УпомянутыС Π²Ρ‹ΡˆΠ΅ ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ структурныС, Ρ‚Π°ΠΊ ΠΈ повСдСнчСскиС элСмСнты систСмы. ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Π°Ρ Π·Π°Π΄Π°Ρ‡Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ мноТСство выполняСмых вмСстС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ΠŸΡ€ΠΈ этом для выполнСния Ρ€Π°Π·Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π² Ρ€Π°Π·Π½Ρ‹Ρ… случалх с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ элСмСнтами. Вакая коллСкция элСмСнтов (с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ) Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ сотрудничСство. ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ сотрудничСства состоит ΠΈΠ· Π΄Π²ΡƒΡ… частСй: структурной части, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π°ΠΊΡ†Π΅Π½Ρ‚ дСлаСтся Π½Π° Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ построСнии ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ… элСмСнтов, ΠΈ повСдСнчСской, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ основноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ удСляСтся Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами. (Об этом ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‡ΡŒ Π² ΡΠ»Π΅Π»ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅.)

Рис. 10.6. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° сотрудничСства для систСмы составлСния расписания

БотрудничСство отобраТаСтся Π² Π²ΠΈΠ΄Π΅ эллипса (Π½Π°Ρ‡Π΅Ρ€Ρ‚Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ), содСрТащСго Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ° Π½ Ρ‚Π° сотрудничСства. Имя сотрудничСства Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ. Оно прСдставляСт собой ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ»ΠΈ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΡƒΡŽ Ρ„Ρ€Π°Π·Ρƒ, ΡΠΎΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ входят Π² словарный состав ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ систСмы. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΈ повСдСнчСскиС части сотрудничСства ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ эллипса сотрудничСства. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ структурной части систСмы составлСния расписания ΠΏΠΎΠΊΠ°Π·Π°Π½ нарис. 10.6. Бтруктурная Ρ‡Π°ΡΡ‚ΡŒ сотрудничСства прСдставляСт собой сочСтаниС классов ΠΈ интСрфСйсов, ΠΊΠΎ ΠΌ ΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈ ΡƒΠ·Π»ΠΎΠ². БистС ΠΌ Π°, показанная Π½Π° рис. 10.6, ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ мноТСство Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² сотрудничСства. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ сотрудничСства ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½ Π² систСмС, Π½ΠΎ Π΅Π³ΠΎ элСмСнты β€” Π½Π΅Ρ‚. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° сотрудничСства ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Π·Π° счСт ΠΈΠ½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ.

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ повСдСния

ΠŸΡ€ΠΈ ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ повСдСнчСской характСристики систСмы Π°ΠΊΡ†Π΅Π½Ρ‚ ставится Π½Π° Π΅Π΅ динамичСских аспСктах. Π‘ этой Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния нас интСрСсуСт, ΠΊΠ°ΠΊ Π²Π΅Π΄ΡƒΡ‚ сСбя элСмСнты систСмы ΠΏΡ€ΠΈ взаимодСйствии с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ элСмСнтами Ρ‚ΠΎΠΉ ΠΆΠ΅ систСмы. ИмСнно Π²ΠΎ взаимодСйствии ΠΎΠ΄Π½ΠΈΡ… элСмСнтов с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΈ ΠΏΡ€ΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ особСнности ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² этом Ρ€Π°Π·Π΄Π΅Π»Π΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ:

β€’Β ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΅Π³ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° сущСствования;

β€’Β ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ совмСстно Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ€Π°Π΄ΠΈ достиТСния ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ†Π΅Π»ΠΈ;

β€’Β ΠΏΠΎΡ‚ΠΎΠΊ управлСния с Π°ΠΊΡ†Π΅Π½Ρ‚ΠΎΠΌ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ дСйствии ΠΈΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ дСйствий;

β€’Β ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΡŽ дСйствий элСмСнтов ΠΈ взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ.

Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ Ρ‚Π°ΠΊΠΆΠ΅ описаны Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для модСлирования распрСдСлСнных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

БотрудничСство ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

БотрудничСство ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡Π΅Π½ΠΈΠΈ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π° ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ†Π΅Π»ΡŒΡŽ выполнСния Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ. Они Π½Π΅ Π²ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Π² постоянныС ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ. Одни ΠΈ Ρ‚Π΅ ΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ для выполнСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡. БотрудничСство ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ сотрудничСства. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ сотрудничСства ΠΈΠΌΠ΅ΡŽΡ‚ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΡƒΡŽ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ части. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΌΡ‹ рассмотрСли Π²Ρ‹ΡˆΠ΅. Π˜Π½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Π°Π» Ρ‡Π°ΡΡ‚ΡŒ отобраТаСтся Π² Π²ΠΈΠ΄Π΅ Π³Ρ€Π°Ρ„Π°, Π²Π΅Ρ€ΡˆΠΈΠ½Π°ΠΌΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ β€” участники рассматриваСмого сотрудничСства. Бвязи ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Ρ€Π΅Π±Ρ€Π°ΠΌΠΈ. Π Π΅Π±Ρ€Π° ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°Ρ‚ΡŒΡΡ сообщСниями, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Π²Ρ‹Π·ΠΎΠ²Π°ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ стСрСотипов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ связи.

Бвязь ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ ассоциации. Π‘ двумя связанными ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΌΠΎΡ‚ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ дСйствия. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ дСйствия ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ состояниС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π΄Π²ΡƒΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² дСйствий, связанных с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ.

β€’ create Β ΠžΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ создан

β€’ destroy Β ΠžΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Ρ€ΡƒΡˆΠ΅Π½

β€’ call Β ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ, опрСдСлСнная Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈΠ»ΠΈ ΠΈΠΌ самим

β€’ return Β ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ возвращаСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

β€’ send Β ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ послан сигнал

ΠŸΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ любо Π³ ΠΎ ΠΌ Π΅Ρ‚ΠΎΠ΄Π° Π²ΠΎΠ· ΠΌ ΠΎΠΆΠ½ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ ΠΌ Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ Π²ΠΎΠ·Π²Ρ€Π° Ρ‰ Π°Π΅ΠΌΠΎ Π³ ΠΎ значСния (Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ дСйствия).

Π­Ρ‚ΠΈ дСйствия ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ мСсто, Ссли ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π²ΠΈΠ΄ΠΈΠΌ для Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ. Для объяснСния ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ видимости ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ стСрСотипы.

β€’ association ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π²ΠΈΠ΄ΠΈΠΌ ΠΏΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ сущСствования ассоциации (самый ΠΎΠ±Ρ‰ΠΈΠΉ случай)

β€’ parameter ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π²ΠΈΠ΄ΠΈΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ являСтся ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ для Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°