ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний. 
Case-срСдства ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

На Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ состояния счСта, Π° Ρ‚Π°ΠΊΠΆΠ΅ процСсс ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° счСта ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ состояния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅. НапримСр, Ссли ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ счСт, послСдний ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΡΠΎΡΡ‚ояниС «Π—Π°ΠΊΡ€Ρ‹Ρ‚». Π’Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° называСтся событиСм, ΠΈΠΌΠ΅Π½Π½ΠΎ события Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ состояния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅. Когда ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ находится Π² ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ состоянии, ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний. Case-срСдства ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

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

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π’Π°ΠΊ, банковский счСт ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… состояний. Он ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚, Π·Π°ΠΊΡ€Ρ‹Ρ‚ ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ ΠΊΡ€Π΅Π΄ΠΈΡ‚ ΠΏΠΎ Π½Π΅ΠΌΡƒ. ПовСдСниС счСта мСняСтся Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ ΡΠΎΡΡ‚ояния, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ Π½Π°Ρ…одится. На Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ состояний ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ эту ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. На Ρ€ΠΈΡ. 10.5 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний для банковского счСта.

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° состояний для класса Account.

Рис. 10.5. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° состояний для класса Account.

На Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ состояния счСта, Π° Ρ‚Π°ΠΊΠΆΠ΅ процСсс ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° счСта ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ состояния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅. НапримСр, Ссли ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ счСт, послСдний ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΡΠΎΡΡ‚ояниС «Π—Π°ΠΊΡ€Ρ‹Ρ‚». Π’Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° называСтся событиСм, ΠΈΠΌΠ΅Π½Π½ΠΎ события Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ состояния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

Когда ΠΊΠ»ΠΈΠ΅Π½Ρ‚ снимаСт дСньги с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ счСта, счСт ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² ΡΠΎΡΡ‚ояниС «ΠŸΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΡ€Π΅Π΄ΠΈΡ‚Π°». Π­Ρ‚ΠΎ происходит, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли баланс ΠΏΠΎ ΡΡ‡Π΅Ρ‚Ρƒ мСньшС нуля, Ρ‡Ρ‚ΠΎ ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½ΠΎ условиСм [ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ баланс] Π½Π° Π½Π°ΡˆΠ΅ΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅. Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ΅ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки условиС опрСдСляСт, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ»ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ состояния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

На Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ Π΄Π²Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… состояния — Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅. ΠΠ°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ состояниС выдСляСтся Ρ‡Π΅Ρ€Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ: ΠΎΠ½ΠΎ соотвСтствуСт ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΅Π³ΠΎ создания. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ состояниС обозначаСтся Ρ‡Π΅Ρ€Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π² Π±Π΅Π»ΠΎΠΌ ΠΊΡ€ΡƒΠΆΠΊΠ΅: ΠΎΠ½ΠΎ соотвСтствуСт ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° нСпосрСдствСнно ΠΏΠ΅Ρ€Π΅Π΄ Π΅Π³ΠΎ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. На Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ состояний ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ состояниС. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… состояний, сколько Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ»ΠΈ ΠΈΡ… ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Π±Ρ‹Ρ‚ΡŒ Π²ΠΎΠΎΠ±Ρ‰Π΅.

Когда ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ находится Π² ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ состоянии, ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅ процСссы. Π’ Π½Π°ΡˆΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΡ€ΠΈ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ΠΈΠΈ ΠΊΡ€Π΅Π΄ΠΈΡ‚Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ посылаСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ сообщСниС. ΠŸΡ€ΠΎΡ†Π΅ΡΡΡ‹, происходящиС, ΠΊΠΎΠ³Π΄Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ находится Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ состоянии, Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ дСйствиями.

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ класса, ΠΎΠ½ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΡ‡Π΅Π½ΡŒ слоТных случаях. Если ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… состояниях ΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ… Π²Π΅Π΄Π΅Ρ‚ сСбя ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ, для Π½Π΅Π³ΠΎ, вСроятно, потрСбуСтся такая Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°. Однако Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΎΠ½ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ся. Если ΠΆΠ΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний всС-Ρ‚Π°ΠΊΠΈ Π±Ρ‹Π»ΠΈ построСны, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ… ΠΏΡ€ΠΈ создании классов.

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ состояний Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ для докумСнтирования.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ