ΠΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊΠ°ΡΡΡΠ΅Π½ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π² ΠΈΠ³ΡΠ°Ρ
Π ΡΡΠΎΠΌ ΠΏΠΎΡΡΠ΅ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΈ ΠΊΠ°ΡΡΡΠ΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³ΡΠ°Ρ . ΠΡΠ° ΡΡΠ°ΡΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΎΠΌ Π²ΠΎΡ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΠΈ ΠΏΠΎ ΡΡΠΎΠΉ ΠΆΠ΅ ΡΠ΅ΠΌΠ΅ Ρ Π΄Π΅Π»Π°Π» Π΄ΠΎΠΊΠ»Π°Π΄ Π½Π° Lua in Moscow, ΡΠ°ΠΊ ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½ΡΠ°Π²ΠΈΡΡΡ ΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΠΈΠ΄Π΅ΠΎ, ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΠΎΡ Π·Π΄Π΅ΡΡ.
ΠΠΎΠ΄ ΡΡΠ°ΡΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Lua, Π½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π΄ΡΡΠ³ΠΈΡ
ΡΠ·ΡΠΊΠ°Ρ
(Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΡΡΡΠΈΠ½Ρ, Ρ.ΠΊ. ΠΎΠ½ΠΈ Π΅ΡΡΡ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ Π²ΠΎ Π²ΡΠ΅Ρ
ΡΠ·ΡΠΊΠ°Ρ
).
Π ΡΡΠ°ΡΡΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΠΈΡΠ°ΡΡ ΠΊΠ°ΡΡΡΠ΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π°:
ΠΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΡΠ°ΡΡΠΎ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³ΡΠ°Ρ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΊΠ°ΡΡΡΠ΅Π½Π°Ρ : ΠΏΠ΅ΡΡΠΎΠ½Π°ΠΆ Π²ΡΡΡΠ΅ΡΠ°Π΅Ρ Π²ΡΠ°Π³Π°, ΡΡΠΎ-ΡΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ Π΅ΠΌΡ, Π²ΡΠ°Π³ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ, ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅. ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΌΠΎΠ³ΡΡ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ ΠΈ Π² Π³Π΅ΠΉΠΌΠΏΠ»Π΅Π΅. ΠΠ·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° ΡΡΡ Π³ΠΈΡΠΊΡ:
1. ΠΡΠΊΡΡΠ²Π°Π΅ΡΡΡ Π΄Π²Π΅ΡΡ
2. ΠΠ΅ΡΡΠΎΠ½Π°ΠΆ Π·Π°Ρ
ΠΎΠ΄ΠΈΡ Π² Π΄ΠΎΠΌ
3. ΠΠ²Π΅ΡΡ Π·Π°ΠΊΡΡΠ²Π°Π΅ΡΡΡ
4. ΠΠΊΡΠ°Π½ ΠΏΠ»Π°Π²Π½ΠΎ ΡΠ΅ΠΌΠ½Π΅Π΅Ρ
5. ΠΠ΅Π½ΡΠ΅ΡΡΡ ΡΡΠΎΠ²Π΅Π½Ρ
6. ΠΠΊΡΠ°Π½ ΠΏΠ»Π°Π²Π½ΠΎ ΡΠ²Π΅ΡΠ»Π΅Π΅Ρ
7. ΠΠ΅ΡΡΠΎΠ½Π°ΠΆ Π·Π°Ρ
ΠΎΠ΄ΠΈΡ Π² ΠΊΠ°ΡΠ΅
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ NPC ΠΈΠ»ΠΈ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ Π±ΠΈΡΠ² Ρ Π±ΠΎΡΡΠ°ΠΌΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ Π±ΠΎΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΎΠ΄Π½ΠΎ Π·Π° Π΄ΡΡΠ³ΠΈΠΌ.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ°
Π‘ΡΡΡΠΊΡΡΡΠ° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° Π΄Π΅Π»Π°Π΅Ρ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π½Π΅ΠΏΡΠΎΡΡΠΎΠΉ. ΠΠΎΠΏΡΡΡΠΈΠΌ, Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΈΠ³ΡΠΎΠ²ΠΎΠΉ ΡΠΈΠΊΠ»:
ΠΡ Ρ ΠΎΡΠΈΠΌ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠ°ΡΡΡΠ΅Π½Ρ: ΠΈΠ³ΡΠΎΠΊ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΠΊ NPC, NPC Π³ΠΎΠ²ΠΎΡΠΈΡ:Β«You did it!Β», Π° Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΡΠΎΡΠΊΠΎΠΉ ΠΏΠ°ΡΠ·Ρ Π³ΠΎΠ²ΠΎΡΠΈΡ:Β«Thank you!Β». Π ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎΠΌ ΠΌΠΈΡΠ΅, ΠΌΡ Π±Ρ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΡΡΠΎ Π²ΠΎΡ ΡΠ°ΠΊ:
Π Π²ΠΎΡ ΡΡΡ ΠΌΡ ΠΈ Π²ΡΡΡΠ΅ΡΠ°Π΅ΠΌΡΡ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠΎΠ³ΡΡ Π΄Π°ΠΆΠ΅ ΠΎΠΆΠΈΠ΄Π°ΡΡ Π²Π²ΠΎΠ΄Π° ΠΎΡ ΠΈΠ³ΡΠΎΠΊΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ Π·Π°ΠΊΡΡΡΡ ΠΎΠΊΠ½ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³Π°). ΠΠΌΠ΅ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ delay Π½Π΅Π»ΡΠ·Ρ Π²ΡΠ·Π²Π°ΡΡ ΡΠΎΡ ΠΆΠ΅ sleep β ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ, Π±ΡΠ΄ΡΠΎ ΠΈΠ³ΡΠ° Π·Π°Π²ΠΈΡΠ»Π°.
ΠΠ°Π²Π°ΠΉΡΠ΅ Π²Π·Π³Π»ΡΠ½Π΅ΠΌ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡ ΠΎΠ΄ΠΎΠ² ΠΊ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
bool, enum, ΠΌΠ°ΡΠΈΠ½Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ
Π‘Π°ΠΌΡΠΉ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π΄Π»Ρ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ β ΡΡΠΎ Ρ ΡΠ°Π½ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Π² bool’Π°Ρ , ΡΡΡΠΎΠΊΠ°Ρ ΠΈΠ»ΠΈ enum’Π°Ρ . ΠΠΎΠ΄ ΠΏΡΠΈ ΡΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
ΠΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΏΠ°Π³Π΅ΡΡΠΈ-ΠΊΠΎΠ΄Ρ ΠΈ Π΄Π»ΠΈΠ½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΡΠΊΠ°ΠΌ if-else Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΡΠ°ΠΊ ΡΡΠΎ Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Action list
Π ΠΊΠ°ΡΡΡΠ΅Π½Π΅, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ: GoToAction, DialogueAction ΠΈ DelayAction.
ΠΠ»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² Ρ Π±ΡΠ΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ middleclass Π΄Π»Ρ ΠΠΠ Π² Lua.
ΠΠΎΡ, ΠΊΠ°ΠΊ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΡΡΡ DelayAction :
Π€ΡΠ½ΠΊΡΠΈΡ ActionList:update Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
Π Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΡΠ°ΠΌΠΎΠΉ ΠΊΠ°ΡΡΡΠ΅Π½Ρ:
Π‘ΠΎΠ²Π΅ΡΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΡ Π¨ΠΎΠ½Π° ΠΠΈΠ΄Π΄Π»Π΄ΠΈΡΡΠ° (Sean Middleditch) ΠΏΡΠΎ action list’Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ.
Action list’Ρ Π² ΡΠ΅Π»ΠΎΠΌ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½Ρ. Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» ΠΈΡ Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ ΠΈΠ³Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π΄ΠΎΠ»Π³ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΈ Π² ΡΠ΅Π»ΠΎΠΌ Π±ΡΠ» ΡΡΠ°ΡΡΠ»ΠΈΠ². ΠΠΎ ΠΈ ΡΡΠΎΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ. ΠΠΎΠΏΡΡΡΠΈΠΌ, ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΊΠ°ΡΡΡΠ΅Π½Ρ:
Π§ΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΈΠΌΡΠ»ΡΡΠΈΡ if/else, Π½ΡΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ³ΠΎΠ². ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ ΡΡΠ³Π°ΠΌΠΈ, ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡ-ΡΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΈΠΌΠ΅ΡΡΠ΅ΠΌΡ Π½ΡΠΆΠ½ΡΠΉ ΡΡΠ³. ΠΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ ΡΠΈΡΠ°Π΅ΡΡΡ ΠΈ ΠΏΠΈΡΠ΅ΡΡΡ, ΠΊΠ°ΠΊ ΡΡΠ½ΠΊΡΠΈΡ Π²ΡΡΠ΅.
ΠΠΎΡΡΡΠΈΠ½Ρ Lua Π΄Π΅Π»Π°ΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄ ΡΠ΅Π°Π»ΡΠ½ΠΎΡΡΡΡ.
ΠΠΎΡΡΡΠΈΠ½Ρ
ΠΡΠ½ΠΎΠ²Ρ ΠΊΠΎΡΡΡΠΈΠ½ Π² Lua
ΠΠΎΡΡΡΠΈΠ½Π° β ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ Π½Π° ΠΏΠ°ΡΠ·Ρ ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΠ·ΠΆΠ΅ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. ΠΠΎΡΡΡΠΈΠ½Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π² ΡΠΎΠΌ ΠΆΠ΅ ΠΏΠΎΡΠΎΠΊΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°. ΠΠΎΠ²ΡΠ΅ ΠΏΠΎΡΠΎΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΡΡΡΠΈΠ½ Π½Π΅ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°ΡΡΡΠ΅Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΡΡΠΈΠ½
ΠΠΎΡ, ΠΊΠ°ΠΊ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠ»Π°ΡΡ Action Π² Π½ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅:
ΠΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΠΎΡ ΠΎΠΆ Π½Π° action list’Ρ: ΡΡΠ½ΠΊΡΠΈΡ update Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π½Π΅ Π·Π°Π²Π΅ΡΡΠΈΠ»ΠΎΡΡ. ΠΠΎ Π·Π΄Π΅ΡΡ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΊΠΎΡΡΡΠΈΠ½Ρ ΠΈ Π΄Π΅Π»Π°Π΅ΠΌ yield Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° ( Action:launch Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ· ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΊΠΎΡΡΡΠΈΠ½Ρ). ΠΠ΄Π΅-ΡΠΎ Π² update ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° ΠΌΡ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΊΠ°ΡΡΡΠ΅Π½Ρ Π²ΠΎΡ ΡΠ°ΠΊ:
Π Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°ΡΡΡΠ΅Π½Ρ:
ΠΠΎΡ, ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΡΡΠ½ΠΊΡΠΈΡ delay :
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΠΊΠΈΡ Π²ΡΠ°ΠΏΠΏΠ΅ΡΠΎΠ² Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΡ ΠΊΠΎΠ΄Π° ΠΊΠ°ΡΡΡΠ΅Π½. DelayAction ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π²ΠΎΡ ΡΠ°ΠΊ:
ΠΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½Π° ΡΠΎΠΉ, ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π² action list’Π°Ρ ! ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ½ΠΎΠ²Π° Π²Π·Π³Π»ΡΠ½Π΅ΠΌ Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Action:launch :
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΡΠ½ΠΊΡΠΈΡ goTo :
ΠΠΎΡΡΡΠΈΠ½Ρ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠΎΡΠ΅ΡΠ°ΡΡΡΡ Ρ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ (event’Π°ΠΌΠΈ). Π Π΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌ ΠΊΠ»Π°ΡΡ WaitForEventAction :
ΠΡΠΎΡΡΠΎ ΠΈ ΡΠΈΡΠ°Π΅ΠΌΠΎ. ΠΠΎΠ³Π΄Π° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π·Π°ΠΊΡΡΠ²Π°Π΅ΡΡΡ, ΠΎΠ½ΠΎ ΠΏΠΎΡΡΠ»Π°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅ Ρ ΡΠΈΠΏΠΎΠΌ ‘DialogueWindowClosed`. ΠΠ΅ΠΉΡΡΠ²ΠΈΠ΅ Β«sayΒ» Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ ΠΈ ΡΠ²ΠΎΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π·Π° Π½ΠΈΠΌ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΡΡΠΈΠ½ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΡΠ΅ ΠΊΠ°ΡΡΡΠ΅Π½Ρ ΠΈ Π΄Π΅ΡΠ΅Π²ΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²:
Π§ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΡΡΠΈΠ½ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΡΠΎΡΠΈΠ°Π»Ρ ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΊΠ²Π΅ΡΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
ΠΠΎΡΡΡΠΈΠ½Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ AI. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠΎΠ½ΡΡΡ Π±ΡΠ΄Π΅Ρ Π΄Π²ΠΈΠ³Π°ΡΡΡΡ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΡΠ°Π΅ΠΊΡΠΎΡΠΈΠΈ:
ΠΠΎΠ³Π΄Π° ΠΌΠΎΠ½ΡΡΡ ΡΠ²ΠΈΠ΄ΠΈΡ ΠΈΠ³ΡΠΎΠΊΠ°, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΡΡΡΠΈΠ½Ρ ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ Π΅Ρ. ΠΠΎΡΡΠΎΠΌΡ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠΈΠΊΠ» ( while true ) Π²Π½ΡΡΡΠΈ followPath Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌ.
ΠΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΡΡΠΈΠ½ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ Β«ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠ΅Β» Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠ°ΡΡΡΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΡΡ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΠΎΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΠΊΠ°ΡΡΡΠ΅Π½Ρ, Π³Π΄Π΅ Π΄Π΅Π²ΠΎΡΠΊΠ° ΠΈ ΠΊΠΎΡ ΠΈΠ΄ΡΡ ΠΊ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠΎΡΠΊΠ΅ Π΄ΡΡΠ³Ρ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΠΊΠΎΡΠΎΡΡΡΠΌΠΈ. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΏΡΠΈΡ ΠΎΠ΄ΡΡ ΠΊ Π½Π΅ΠΉ, ΠΊΠΎΡ Π³ΠΎΠ²ΠΎΡΠΈΡ Β«meowΒ».
ΠΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎΡ ΠΊΠ»Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡΠ½ΡΠΌ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ N-Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ.
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΊΠ»Π°ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΆΠ΄Π°ΡΡ, ΠΏΠΎΠΊΠ° ΠΎΠ΄Π½Π° ΠΈΠ· ΠΊΠΎΡΡΡΠΈΠ½ Π·Π°Π²Π΅ΡΡΠΈΡΡΡ, Π²ΠΌΠ΅ΡΡΠΎ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ, ΠΏΠΎΠΊΠ° Π²ΡΠ΅ ΠΊΠΎΡΡΡΠΈΠ½Ρ Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² Π³ΠΎΠ½ΠΎΡΠ½ΡΡ ΠΌΠΈΠ½ΠΈ-ΠΈΠ³ΡΠ°Ρ . ΠΠ½ΡΡΡΠΈ ΠΊΠΎΡΡΡΠΈΠ½Ρ Π±ΡΠ΄Π΅Ρ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅, ΠΏΠΎΠΊΠ° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π³ΠΎΠ½ΡΠΈΠΊΠΎΠ² Π΄ΠΎΡΡΠΈΠ³Π½Π΅Ρ ΡΠΈΠ½ΠΈΡΠ° ΠΈ Π·Π°ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠ°ΠΊΡΡ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ.
ΠΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π° ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ΠΊΠΎΡΡΡΠΈΠ½
ΠΠΎΡΡΡΠΈΠ½Ρ β ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΠΊΠ°ΡΡΡΠ΅Π½Ρ ΠΈ Π³Π΅ΠΉΠΌΠΏΠ»Π΅ΠΉΠ½ΡΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π»Π΅Π³ΠΊΠΎ ΡΠΈΡΠ°Π΅ΡΡΡ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅ΡΡΡ. ΠΠ°ΡΡΡΠ΅Π½Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Π»Π΅Π³ΠΊΠΎ ΡΠΌΠΎΠ³ΡΡ ΠΏΠΈΡΠ°ΡΡ ΠΌΠΎΠ΄Π΄Π΅ΡΡ ΠΈΠ»ΠΈ Π»ΡΠ΄ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΡ ΠΈΠ³Ρ ΠΈΠ»ΠΈ ΡΡΠΎΠ²Π½Π΅ΠΉ).
Π Π²ΡΡ ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΈΠ»ΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ Π³ΠΎΠ½ΠΊΠΈ (race condition).
Π£ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° Π΅ΡΡΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ³ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡΠΌΠΈ. ΠΠΎΠΏΡΡΡΠΈΠΌ, Π² Π²Π°ΡΠ΅ΠΉ ΠΈΠ³ΡΠ΅ Π±ΡΠ΄Π΅Ρ Π΄Π»ΠΈΠ½Π½ΡΠΉ ΡΡΡΠΎΡΠΈΠ°Π», ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΡΡΠΈΠ½. ΠΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΠΎΠ³ΠΎ ΡΡΡΠΎΡΠΈΠ°Π»Π° ΠΈΠ³ΡΠΎΠΊ Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ, Ρ.ΠΊ. Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΊΠΎΡΡΡΠΈΠ½Ρ (ΡΡΠΎ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π²Π΅ΡΡ Π΅Ρ ΡΡΠ΅ΠΊ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π²Π½ΡΡΡΠΈ), ΡΡΠΎΠ±Ρ ΠΏΡΠΈ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΠΈΠ· ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΡΠΎΡΠΈΠ°Π»Π°.
(ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ PlutoLibrary ΠΊΠΎΡΡΡΠΈΠ½Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ, Π½ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ Lua 5.1)
ΠΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Ρ ΠΊΠ°ΡΡΡΠ΅Π½Π°ΠΌΠΈ, Ρ.ΠΊ. ΠΎΠ±ΡΡΠ½ΠΎ Π² ΠΈΠ³ΡΠ°Ρ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π² ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Π΅ ΠΊΠ°ΡΡΡΠ΅Π½Ρ Π½Π΅ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅ΡΡΡ.
ΠΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π΄Π»ΠΈΠ½Π½ΡΠΌ ΡΡΡΠΎΡΠΈΠ°Π»ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠΈΡΡ, Π΅ΡΠ»ΠΈ ΡΠ°Π·Π±ΠΈΡΡ Π΅Π³ΠΎ Π½Π° Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΊΡΡΠΊΠΈ. ΠΠΎΠΏΡΡΡΠΈΠΌ, ΠΈΠ³ΡΠΎΠΊ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°ΡΡΡ ΡΡΡΠΎΡΠΈΠ°Π»Π° ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ΄ΡΠΈ Π² Π΄ΡΡΠ³ΡΡ ΠΊΠΎΠΌΠ½Π°ΡΡ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΡΡΠΎΡΠΈΠ°Π». Π ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ΅ΠΊΠΏΠΎΠΈΠ½Ρ ΠΈΠ»ΠΈ Π΄Π°ΡΡ ΠΈΠ³ΡΠΎΠΊΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡΡΡ. Π ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ ΠΌΡ Π·Π°ΠΏΠΈΡΠ΅ΠΌ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ Β«ΠΈΠ³ΡΠΎΠΊ ΠΏΡΠΎΡΡΠ» ΡΠ°ΡΡΡ 1 ΡΡΡΠΎΡΠΈΠ°Π»Π°Β». ΠΠ°Π»Π΅Π΅, ΠΈΠ³ΡΠΎΠΊ ΠΏΡΠΎΠΉΠ΄ΡΡ Π²ΡΠΎΡΡΡ ΡΠ°ΡΡΡ ΡΡΡΠΎΡΠΈΠ°Π»Π°, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΡ ΡΠΆΠ΅ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΡΡ ΠΊΠΎΡΡΡΠΈΠ½Ρ. Π ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅β¦ ΠΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅, ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π½Π°ΡΠ½ΡΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΡΡΡΠΈΠ½Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠ°ΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ³ΡΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΎΠΉΡΠΈ.
ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π² ΠΠΠ (Java), ΠΏΠΎ-ΠΏΡΠΎΡΡΠΎΠΌΡ?
ΠΠ±ΡΡΡΠ½ΠΈΡΠ΅ ΠΏΠΎ-ΠΏΡΠΎΡΡΠΎΠΌΡ, Π½Π° ΠΏΠ°Π»ΡΡΠ°Ρ , Π·Π°ΡΠ΅ΠΌ ΠΈ Π΄Π»Ρ ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ½Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ (Java)? ΠΡΠ΅ ΡΡΠΈ Π·Π°ΡΠΌΠ½ΡΠ΅ ΠΊΠ½ΠΈΠΆΠ½ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²ΠΊΠΈ, ΡΡΠ½ΠΎΡΡΠΈ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΠΏΡΠΈΠ±Π°Π²Π»ΡΡΡ.
16 ΠΎΡΠ²Π΅ΡΠΎΠ² 16
ΠΠ±ΡΠ΅Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅: ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ β ΡΡΠΎ ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΡΠ°Π²ΠΈΠ» Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΊΠ°ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π±ΡΠ΄ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ.
ΠΠΎΠ³Π΄Π° Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΡΠΈ «ΠΎΠ±ΡΠ΅ΠΊΡΡ», Π²Ρ ΡΠ²Π΅ΡΠ΅Π½Ρ Π² ΡΠΎΠΌ, ΡΡΠΎ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ Π²Ρ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ.
Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΎ-ΡΠΎ ΠΏΠΎΡ ΠΎΠΆΠ΅Π΅. ΠΠΎΡΠ΅ΠΌΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠ°ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ? ΠΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΠ½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π», Π·Π°Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅.
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ Π²Π°Ρ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΈΠΏΡ:
Π° ΡΠ΅ΠΉΡΠ°Ρ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ΅ΠΌ, ΡΡΠΎ Ρ Π½Π°Ρ Π΅ΡΡΡ:
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΡ ΠΈΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ, Π½ΠΎ ΡΡΡΡ ΠΊΡΠΎΠ΅ΡΡΡ Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²:
ΠΠ°ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΡΡΡΠ°Π½Π½ΡΠΌ, Π½ΠΎ ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠΎ, ΡΡΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° ΠΎΡ ΠΆΠΈΠ²ΠΎΡΠ½ΠΎΠ³ΠΎ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠ»Π°ΡΡΠΎΠ². ΠΡ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΎΠΏΡΡ Ρ ΠΎΠ±Π΅Π·ΡΡΠ½ΠΎΠΉ, ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΡΡΠΈΠ»ΠΈ Π³Π°ΡΠΈΡΡ ΠΎΠ³ΠΎΠ½Ρ Π²ΠΎΠ΄ΠΎΠΉ ΠΈΠ· Π²Π΅Π΄ΡΡΠΊΠ°; Π° ΠΏΠΎΡΠΎΠΌ ΠΏΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ Π²Π΅Π΄ΡΡΠΊΠΎ Π½Π° ΠΏΠ»ΠΎΡ ΠΏΠΎΡΡΠ΅Π΄ΠΈ Π±Π°ΡΡΠ΅ΠΉΠ½Π°, Π½ΠΎ ΠΎΠ±Π΅Π·ΡΡΠ½Π° Π²ΡΡ ΡΠ°Π²Π½ΠΎ Π±Π΅Π³Π°Π»Π° ΠΏΠΎ ΠΌΠΎΡΡΠΈΠΊΡ Π½Π° ΠΏΠ»ΠΎΡ ΠΈ ΡΠ΅ΡΠΏΠ°Π»Π° Π²ΠΎΠ΄Ρ ΠΈΠ· Π²Π΅Π΄ΡΡΠΊΠ°, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ΅ΡΠΏΠ°ΡΡ Π²ΠΎΠ΄Ρ ΠΏΡΡΠΌΠΎ ΠΈΠ· Π±Π°ΡΡΠ΅ΠΉΠ½Π°. Π’ΠΎ Π΅ΡΡΡ ΠΎΠ±Π΅Π·ΡΡΠ½ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π° ΠΊΠ»Π°ΡΡ ΠΠΎΠ΄Π°-Π²-ΠΠ΅Π΄ΡΡΠΊΠ΅ Π²ΠΌΠ΅ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΠΎΠ΄Π° (ΠΈ Π΄Π°ΠΆΠ΅ Π±ΠΎΠ»ΡΡΠ΅, ΡΠΊΠ°ΠΆΡ ΠΏΠΎ ΡΠ΅ΠΊΡΠ΅ΡΡ: Π²ΠΌΠ΅ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π‘ΡΠ΅Π΄ΡΡΠ²ΠΎ-Π΄Π»Ρ-Π’ΡΡΠ΅Π½ΠΈΡ).
ΠΠΎΠ³Π΄Π° ΠΌΡ ΠΌΡΡΠ»ΠΈΠΌ ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ β ΡΠΏΠΎΠ΄ΠΎΠ±Π»ΡΠ΅ΠΌΡΡ ΠΆΠΈΠ²ΠΎΡΠ½ΡΠΌ. ΠΡΠ΄ΠΈ ΠΌΡΡΠ»ΡΡ (ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡΡ) ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°ΠΌΠΈ.
ΠΠΎ ΠΏΡΠΎΡΡΠΎΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΡΠ΅? ΠΡ ΠΎΠΊ, ΠΏΡΠ°Π²Π΄Π° ΡΠ΅ΠΉΡΠ°Ρ ΡΡΡ Π½Π°ΡΠ½ΡΡ ΠΏΠ»Π΅Π²Π°ΡΡΡΡ Π²ΡΡΠΊΠΈΠ΅ ΡΠΎΠ²Π°ΡΠΈΡΠΈ ΡΠΈΠΏΠΎ Π³ΡΡΡ π
ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΏΡΠΈΠ΄ΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ. Π‘ΠΊΠΎΠ»ΡΠΊΠΎ Π½Π΅ ΡΠΈΡΠ°ΠΉ, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½Π΅ ΠΎΠ±ΡΡΡΠ½ΡΠΉ, ΠΡ Π‘Π°ΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ½ΡΡΡ ΡΡ Π³ΠΈΠ±ΠΊΠΎΡΡΡ, ΡΠΎΡ ΠΌΠ°ΡΡΡΠ°Π± Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ. ΠΡΡΠ°ΠΉΡΠ΅ΡΡ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΊΠ»Π°ΡΡΠΎΠ² Java ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΈΡ ΠΈΠ·ΡΡΠΈΡΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΠ°ΠΌ ΡΠ»ΠΎΠ²ΠΈΡΡ Π²ΡΡ ΠΌΠΎΡΡ ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ².
ΠΠ΅ Π±ΡΠ΄Π΅ΠΌ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½Ρ ΠΈ Π²ΠΎΠ·ΡΠΌΠ΅ΠΌ Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π΄Π²Π΅ΡΡ.
Π§ΡΠΎ ΠΎΠ±ΡΡΠ½ΡΠΉ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ Ρ Π΄Π²Π΅ΡΡΡ? ΠΡΠΊΡΡΡΡ ΠΈ Π·Π°ΠΊΡΡΡΡ.
Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ Π½Π΅Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΠΊΠΎΠΉ:
Π ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ»Π΅Π΄ΠΈΡΠ΅ Π·Π° ΡΡΠΊΠ°ΠΌΠΈ. ΠΠ±ΡΠ΅ΠΊΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠΉΡΠΈ ΡΠ΅ΡΠ΅Π· Π΄Π²Π΅ΡΡ. ΠΠ°ΠΆΠ½ΠΎ Π΅ΠΌΡ ΠΊΠ°ΠΊΠ°Ρ Π΄Π²Π΅ΡΡ ΠΏΠ΅ΡΠ΅Π΄ Π½ΠΈΠΌ Π΄Π²Π΅ΡΡ, Π΄Π΅ΡΠ΅Π²ΡΠ½Π½Π°Ρ, ΠΆΠ΅Π»Π΅Π·Π½Π°Ρ, Ρ ΠΎΠΊΠΎΡΠΊΠΎΠΌ, ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ ΠΎΠ½Π° Π½Π° ΡΠ΅Π±Ρ ΠΈΠ»ΠΈ ΠΎΡ ΡΠ΅Π±Ρ, Π° ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠΎΠ±ΡΠ΅ ΡΠ΄Π²ΠΈΠ³Π°Π΅ΡΡΡ Π² Π±ΠΎΠΊ? ΠΠ΅Ρ, Π½Π΅ Π²Π°ΠΆΠ½ΠΎ. ΠΠΌΡ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π΅Π΅ Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΎΡΠΊΡΡΡΡ.
ΠΠΎ ΡΡΠΎΠΌΡ, Π² ΠΊΠ»Π°ΡΡΠ΅ «Π§Π΅Π»ΠΎΠ²Π΅ΠΊ» ΠΌΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌ Π² ΠΌΠ΅ΡΠΎΠ΄ «ΠΡΠΎΠΉΡΠΈ ΡΠ΅ΡΠ΅Π· Π΄Π²Π΅ΡΡ» Π½Π΅ ΠΊΠ°ΠΊΡΡ-ΡΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ Π΄Π²Π΅ΡΡ, Π° Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ «ΠΠ²Π΅ΡΡ», ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ Ρ Π½Π΅Π΅ Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ «ΠΡΠΊΡΡΡΡ».
Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π²ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ «ΠΠ²Π΅ΡΡ» ΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ «Π§Π΅Π»ΠΎΠ²Π΅ΠΊΡ» Π² ΠΌΠ΅ΡΠΎΠ΄ «ΠΡΠΎΠΉΡΠΈ ΡΠ΅ΡΠ΅Π· Π΄Π²Π΅ΡΡ», Π½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠ΅ ΡΠ°Π·Π½ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ Π΄Π»Ρ ΠΌΠ΅ΡΠΎΠ»Π° «ΠΡΠΊΡΡΡΡ».
ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ** ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΌΡ Π½Π°Π·ΠΎΠ²ΡΠΌ Π½Π°Π±ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ (ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ ΠΈΠ»ΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ Π½Π°Π΄ Π½ΠΈΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΡΠΈΡΠ»Π° 3 Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, Β«Π§ΠΈΡΠ»ΠΎΒ» ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π½Π°Π±ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²ΡΡΠΈΡΠ°Π½ΠΈΡ, ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΡ. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠΎΠΆΠ΅Ρ Π»ΡΠ±ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΈΠΏΠΎΠ²/ΠΊΠ»Π°ΡΡΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΠΏΡ Π¦Π΅Π»ΠΎΠ΅Π§ΠΈΡΠ»ΠΎ, ΠΠ΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅Π§ΠΈΡΠ»ΠΎ, ΠΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ΅Π§ΠΈΡΠ»ΠΎ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°ΠΊΠΈΠ΅ Π½Π΅ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠ΅ ΡΠΈΠΏΡ ΠΊΠ°ΠΊ ΠΠ½ΡΠ΅ΡΠ²Π°Π» ΠΈΠ»ΠΈ ΠΠΎΠ»ΠΈΠ½ΠΎΠΌ. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠΈΠΏ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ ΠΎΠ΄ΠΈΠ½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. Π’Π°ΠΊ, Π¦Π΅Π»ΠΎΠ΅Π§ΠΈΡΠ»ΠΎ ΠΊΡΠΎΠΌΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π§ΠΈΡΠ»ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΡΠΉ β Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π² ΠΊΠ»Π°ΡΡΠ΅ Π¦Π΅Π»ΠΎΠ΅Π§ΠΈΡΠ»ΠΎ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ Π΄ΠΎΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Β«ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉΒ» ΠΈ Β«ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉΒ».
ΠΠ±ΡΡΡΠ½Ρ Π±Π΅Π· Π΄Π΅ΡΠ°Π»Π΅ΠΉ.
ΠΠΎΠΏΡΡΡΠΈΠΌ, ΠΌΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Framework, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΡΠΎΠ²Π΅ΡΡΠΈΠ» Π»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ double-click ΠΏΠΎ ΡΠΊΡΠ°Π½Ρ.
ΠΠΎ ΠΌΡ ΡΠ΅ΡΠ°Π΅ΠΌ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ°ΠΌΠΈ, Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅ΠΌΡ Π½Π°Ρ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ. ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ².
Π€ΡΠ½ΠΊΡΠΈΡ: ΡΡΠΎ_Π΄Π΅Π»Π°ΡΡ_Π΅ΡΠ»ΠΈ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ_ΠΊΠ»ΠΈΠΊΠ½ΡΠ»_2_ΡΠ°Π·Π°_ΠΏΠΎ_ΡΠΊΡΠ°Π½Ρ() Π·Π°ΡΠΎΠ²ΡΠ²Π°Π΅ΠΌ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ.
Π, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠ°ΠΌ ΠΌΠΎΠΌΠ΅Π½Ρ Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠΊΠ° ΠΏΠΎ ΡΠΊΡΠ°Π½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π½Π°Ρ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, Π° Π²ΠΎΡ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ (ΡΠΈΡΠΎΠ²Π°ΡΡ Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠΈ Π½Π° ΡΠΊΡΠ°Π½Π΅, Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π½ΠΈΠ΅ ΠΌΡΠ·ΡΠΊΠΈ ΠΈ Ρ.Π΄.) ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠΎΠ±ΡΡΠΈΡ ΡΠ΅ΡΠ°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ Π½Π°Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ.
1) ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΎΠΊΡΡΠΆΠ°ΡΡΠΈΠΌ ΠΌΠΈΡΠΎΠΌ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΈΡΠ΅Ρ Π½Π΅ ΠΎΠ΄ΠΈΠ½ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, ΠΎΠ½ΠΈ ΡΠΎΡΡΠΎΡΡ Π½Π΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΈ Π·Π°ΡΠ°ΡΡΡΡ Π½Π΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ. Π ΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΊΠΎΠ΄ ΡΠ°Π·Π½ΡΡ Π°Π²ΡΠΎΡΠΎΠ², ΡΠ°Π·Π½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ. Π‘Π°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ: Π²Ρ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ. ΠΡ Π½Π°ΡΠ»ΠΈ Π½ΡΠΆΠ½ΡΠΉ Π²Π°ΠΌ ΠΊΠ»Π°ΡΡ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈ Π²ΡΠ·ΡΠ²Π°Π΅ΡΠ΅ ΠΎΡΡΡΠ΄Π° ΠΌΠ΅ΡΠΎΠ΄Ρ. Π ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ Π°Π²ΡΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠ΅ΡΠΈΠ» ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄, ΡΠ°Π·Π²Π΅ ΡΡΠΎ ΡΠ΅Π΄ΠΊΠΎΡΡΡ? ΠΡΠΏΡΠ°Π²ΠΈΡΡ Π²ΡΡΠ²Π»Π΅Π½Π½ΡΠ΅ Π±Π°Π³ΠΈ, ΡΠ»ΡΡΡΠΈΡΡ, ΡΠ°ΡΡΠΈΡΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π». Π ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π΄Π»Ρ Π²Π°Ρ Π³Π»ΡΠ±ΠΎΠΊΠΎΠΉ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΡΡΡΡ: Π²Π°Ρ-ΡΠΎ ΠΊΠΎΠ΄ Π·Π°Π²ΡΠ·Π°Π½ Π½Π° Π΅Π³ΠΎ ΠΊΠΎΠ΄! Π Π²Π°Ρ ΠΊΠΎΠ΄ Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ Π»ΠΎΠΌΠ°Π΅ΡΡΡ.
2) Π Java Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΡΡΠΏΠ°ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΌΠ΅ΡΡΠ΅Π½ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄:
Π ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π»ΡΠ±ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Iterable. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΈ Π²ΡΠ·ΡΠ²Π°ΡΡ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΡ Ρ Π½Π΅Π³ΠΎ ΡΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΡΡ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅. ΠΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΡΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ!
3) ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΠΈΠ½Π²Π΅ΡΡΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Π² ΠΏΠ΅ΡΠ²ΡΡ Π΄Π²ΡΡ ΠΏΡΠ½ΠΊΡΠ°Ρ , Π½ΠΎ Π½Π΅ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Π² ΡΡΠΎΠΌ β Ρ Π²Π°Ρ Π²ΡΠ΅ Ρ ΠΎΡΠΎΡΠΎ, Π²Π΅ΡΠ½ΠΈΡΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ°ΡΡ ΡΡΠ°ΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΏΠΎΠ»Π³ΠΎΠ΄Π°.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ: Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π²ΠΈΠ΄Ρ ΠΈ ΡΡΠ΅ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅, ΡΠ²Π°ΠΆΠ°Π΅ΠΌΡΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈ Π±Π»ΠΎΠ³Π° KtoNaNovenkogo.ru. Π XXI Π²Π΅ΠΊΠ΅ ΡΡΡΠ½ΡΠ΅ ΡΡΠ°Π»ΠΈ ΡΠ°ΡΠ΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°ΡΡ Π² ΡΠ²ΠΎΠΈΡ ΡΠ°Π±ΠΎΡΠ°Ρ ΡΠ΅ΠΌΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π³Π»ΠΎΠ±Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ (ΡΡΠΎ ΠΊΠ°ΠΊ?).
Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π½Π°Π±Π»ΡΠ΄Π°Π΅ΡΡΡ ΡΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΊ, Π½ΠΎ ΠΈ ΠΊΡΠ»ΡΡΡΡΡ, ΡΡΠ°Π΄ΠΈΡΠΈΠΉ, ΠΈΠ΄Π΅ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΡΠ°Π·Π½ΡΡ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ². ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΠΎΠΏΠ»ΠΎΡΠ°ΡΡΡΡ Π² Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΠΏΡΠ°Π²ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
Π§ΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΡΠΎΡ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΡΠ΅ΡΠΌΠΈΠ½? ΠΠ°ΠΊ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎΠ΅ ΠΏΡΠ°Π²ΠΎ ΡΠΎΠΎΡΠ½ΠΎΡΠΈΡΡΡ Ρ Π²Π½ΡΡΡΠΈΠ³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΡΠΌ? Π ΠΊΠ°ΠΊ ΡΠ°ΠΌΠΈ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π° ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΡ ΡΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΡ? ΠΡΠ²Π΅ΡΡ Π½Π° ΡΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ Π²Ρ Π½Π°ΠΉΠ΄ΡΡΠ΅ Π² ΡΡΠ°ΡΡΠ΅.
ΠΠ½Π³Π»ΠΈΠΉΡΠΊΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ implementation ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡΡ ΠΠΠ (ΡΡΠΎ ΡΡΠΎ Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ?) ΠΊΠ°ΠΊ Β«ΠΎΡΡΡΠ΅ΡΡΠ²Π»Π΅Π½ΠΈΠ΅Β». ΠΠΏΠ΅ΡΠ²ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½ ΡΠΏΠΎΡΡΠ΅Π±ΠΈΠ» ΠΠΎΠΌΠΈΡΠ΅Ρ ΠΏΠΎ ΠΏΡΠ°Π²Π°ΠΌ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° Π² 1981 Π³ΠΎΠ΄Ρ.
ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ»ΠΎΠ²Π° Β«ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡΒ» β ΠΏΡΠ΅ΡΠ²ΠΎΡΡΡΡ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ Π² ΠΆΠΈΠ·Π½Ρ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ΄Π΅Ρ, ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ, Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ.
Π‘Π΅ΠΉΡΠ°Ρ ΡΠ΅ΡΠΌΠΈΠ½ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² Π΄Π²ΡΡ ΡΡΠ΅ΡΠ°Ρ :
Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠ°Π²Π°, ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ β ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Π²Π½ΡΡΡΠΈΠ³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ², Π·Π°ΠΊΡΠ΅ΠΏΠ»ΡΠ½Π½ΡΡ Π² ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΡΡ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡΡ .
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π³Π»Π°Π²Ρ Π΄Π²ΡΡ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ² ΠΏΠΎΠ΄ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΊΠΎΠ½Π²Π΅Π½ΡΠΈΡ (ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅?) ΠΎ ΠΏΡΠ°Π²ΠΎΠ²ΠΎΠΉ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΠΎ ΡΠ³ΠΎΠ»ΠΎΠ²Π½ΡΠΌ Π΄Π΅Π»Π°ΠΌ.
Π Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΡΡΠΎΡΠΎΠ½Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°Π³ΠΈ:
Π£ΡΡΠ½ΡΠ΅-ΠΏΡΠ°Π²ΠΎΠ²Π΅Π΄Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠ΅ΡΠΌΠΈΠ½ Π² ΡΠ·ΠΊΠΎΠΌ ΠΈ ΡΠΈΡΠΎΠΊΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²Π·ΡΡΡΡ Π½Π° ΡΠ΅Π±Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ² Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π° ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΎΡΠ³Π°Π½Ρ, Π²ΡΠ΄Π΅Π»ΡΡΡ ΡΠ°ΡΡΡ Π΄Π΅Π½Π΅Π³ ΠΈΠ· Π±ΡΠ΄ΠΆΠ΅ΡΠ°, ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ°ΡΡ Ρ ΠΈΠ½ΠΎΡΡΡΠ°Π½Π½ΡΠΌΠΈ ΡΡΡΡΠΊΡΡΡΠ°ΠΌΠΈ.
Π ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ β ΡΡΠΎ ΡΡΠΎ? ΠΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΏΡΠΎΡΡΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅.
ΠΠΎ ΡΡΡΠΈ, ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ β ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ Π² ΠΠ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π».
ΠΠΈΠ΄Ρ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π² ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎΠΌ ΠΏΡΠ°Π²Π΅
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² Π²Ρ Π½Π°ΠΉΠ΄ΡΡΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ ΠΎΠ± ΠΈΠ½ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠΈ, ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ ΠΎΡΡΡΠ»ΠΊΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠ°Π²ΠΎΠ²Π΅Π΄Ρ Π²ΡΠ΄Π΅Π»ΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΠΈΠ΄Ρ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
Π ΠΎΠ±ΡΠ΅ΠΏΡΠΈΠ½ΡΡΠΎΠΉ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΡΠΈΡΠ΅ΡΠΈΠ΅ΠΌ ΡΠ»ΡΠΆΠΈΡ ΡΠΏΠΎΡΠΎΠ± ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ².
ΠΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ | Π§ΡΠΎ ΡΡΠΎ ΠΏΡΠΎΡΡΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ |
---|---|
ΠΠ½ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΡ | ΠΠΎΡΠ»ΠΎΠ²Π½ΠΎΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ° ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎ-ΠΏΡΠ°Π²ΠΎΠ²ΠΎΠΉ Π½ΠΎΡΠΌΡ Π² Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΌ Π½ΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΠΎΠΌ ΠΏΡΠ°Π²ΠΎΠ²ΠΎΠΌ Π°ΠΊΡΠ΅. |
Π’ΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΡ | ΠΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠ° ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎ-ΠΏΡΠ°Π²ΠΎΠ²ΠΎΠΉ Π½ΠΎΡΠΌΡ Ρ ΡΡΡΡΠΎΠΌ ΠΌΠ΅ΡΡΠ½ΡΡ ΡΡΠ°Π΄ΠΈΡΠΈΠΉ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π΅Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π² Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°ΡΠ΅Π»ΡΡΡΠ²ΠΎ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠΈΡ ΠΈ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ². Π’ΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΡΡΡΠ°Π½Π°Ρ , ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΡ ΠΊ ΡΠ°Π·Π½ΡΠΌ ΠΏΡΠ°Π²ΠΎΠ²ΡΠΌ ΡΠ΅ΠΌΡΡΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π°Π½Π³Π»ΠΎ-ΡΠ°ΠΊΡΠΎΠ½ΡΠΊΠΎΠΉ ΠΈ ΡΠΎΠΌΠ°Π½ΠΎ-Π³Π΅ΡΠΌΠ°Π½ΡΠΊΠΎΠΉ). |
ΠΡΡΡΠ»ΠΊΠ° | ΠΡΡΠΌΠΎΠ΅ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π² ΡΠ΅ΠΊΡΡΠ΅ Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π½ΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΎΠ²ΠΎΠ³ΠΎ Π°ΠΊΡΠ° Π½Π° ΡΠΎ, ΡΡΠΎ Π΄Π»Ρ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π²ΠΎΠΏΡΠΎΡΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎΠ΅ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅. |
Π Π΅ΡΠ΅ΠΏΡΠΈΡ | ΠΠ°ΠΈΠΌΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ Π½ΠΎΡΠΌΠΎΡΠ²ΠΎΡΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΎΡΠ³Π°Π½Π°ΠΌΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΏΡΡΠ° Π·Π°ΡΡΠ±Π΅ΠΆΠ½ΡΡ ΡΡΡΠ°Π½ ΡΠΎ ΡΡ ΠΎΠΆΠΈΠΌΠΈ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΠΎ-ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌΠΈ. |
Π£Π½ΠΈΡΠΈΠΊΠ°ΡΠΈΡ | Π‘ΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ² Π² ΡΠ΅Π»ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΅Π΄ΠΈΠ½ΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΠΊ ΠΏΡΠ°Π²ΠΎΠ²ΠΎΠΌΡ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ΄Π° Π²ΠΎΠΏΡΠΎΡΠΎΠ². Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΠ΅ΡΠ°Ρ : ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎΠΉ ΡΠΎΡΠ³ΠΎΠ²Π»ΠΈ, ΡΠ³ΠΎΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΡΠ°Π²Π°, ΡΠΊΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. |
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ½ΡΠ΅ (Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π.Π.ΠΠ΄ΠΎΠ²ΠΈΠ½) Π΄Π΅Π»ΡΡ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π° ΠΎΠ±ΡΡΡ ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ.
ΠΠ±ΡΠ°Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ Π»ΠΈΡΡ ΠΊΠΎΠ½ΡΡΠ°ΡΠ°ΡΠΈΡ ΡΠ°ΠΊΡΠ° ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π°Π΄Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ Π°ΠΊΡΠΎΠ² Π΄Π»Ρ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΉ Π²Π½ΡΡΡΠΈ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π°.
Π’Π°ΠΊ, Π² Ρ. 4 ΡΡ. 15 ΠΠΎΠ½ΡΡΠΈΡΡΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ, ΡΡΠΎ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΡΠ°ΡΡΡΡ ΠΏΡΠ°Π²ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π²ΡΡΡΡΠΏΠ°ΡΡ ΠΎΠ±ΡΠ΅ΠΏΡΠΈΠ·Π½Π°Π½Π½ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΠΈ Π½ΠΎΡΠΌΡ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠ°Π²Π°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΡΠ΅ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΡ Π Π€.
Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ β ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°ΡΠ΅Π»ΡΡΡΠ²Π°. Π ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΡΡ Π½ΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΡΡ ΠΏΡΠ°Π²ΠΎΠ²ΡΡ Π°ΠΊΡΠΎΠ² ΠΈ ΠΎΡΠΌΠ΅Π½Π° ΡΠ΅Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠ°Ρ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎ-ΠΏΡΠ°Π²ΠΎΠ²ΡΠΌ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ²Π°ΠΌ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π°.
ΠΠ°ΠΊΠΎΠ΅ ΠΏΡΠ°Π²ΠΎ Π²Π°ΠΆΠ½Π΅Π΅: ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎΠ΅ ΠΈΠ»ΠΈ Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅
ΠΡΠ²Π΅Ρ Π½Π° ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΡΠ°Π²ΠΎΠ²ΡΡ ΡΡΠ°Π΄ΠΈΡΠΈΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½Ρ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΡΠ°Π²ΠΎΠ²Π΅Π΄ΠΎΠ² ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠΎΡΠ΅ΡΡΡ Π³Π»ΠΎΠ±Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΈΠ»ΡΡΡΡ.
ΠΠ° ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠ»Π°Π½ Π²ΡΠΉΠ΄ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΡΡ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΡΡ ΡΡΠΈΠ»ΠΈΠΉ:
ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΠΏΡΠ΅Π²Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΡΡ Π½ΠΎΡΠΌ ΠΏΡΠ°Π²Π° Π½Π°Π΄ Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌΠΈ. Π£ΠΆΠ΅ ΡΠ΅ΠΉΡΠ°Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΡΡΠ°Π½Ρ Π·Π°ΠΊΡΠ΅ΠΏΠΈΠ»ΠΈ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π·Π°ΠΊΠΎΠ½Π°Ρ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠ°ΠΊΠΎΠΌ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ΅ (ΡΡΠΎ ΠΊΠ°ΠΊ?).
Π‘ΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΠΎΠ½ΡΡΠΈΡΡΡΠΈΠΈ Π Π€, Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΡ Π·Π°ΠΊΠΎΠ½Π° ΠΈ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎΠ³ΠΎ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ° Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ. ΠΠΎΡΡΠΎΠΌΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΡΠΈΡΡΡ ΠΏΡΠΈΡΠ»ΠΈ ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ ΠΎ ΠΏΡΠΈΠΌΠ°ΡΠ΅ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠ°Π²Π° Π½Π°Π΄ Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌ.
ΠΠ΄Π½Π°ΠΊΠΎ Π² ΠΈΡΠ»Π΅ 2015 Π³ΠΎΠ΄Π° ΠΠΎΠ½ΡΡΠΈΡΡΡΠΈΠΎΠ½Π½ΡΠΉ Π‘ΡΠ΄ Π Π€ ΠΈΠ·Π»ΠΎΠΆΠΈΠ» Π² ΡΠ²ΠΎΡΠΌ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΡΡ ΡΠΎΡΠΊΡ Π·ΡΠ΅Π½ΠΈΡ. ΠΠ½ Π½Π°ΠΏΠΈΡΠ°Π», ΡΡΠΎ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²ΠΎ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΠΏΡΠ°Π²Π΅ ΠΎΡΡΡΡΠΏΠΈΡΡ ΠΎΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²ΠΎΠ·Π»Π°Π³Π°Π΅ΠΌΡΡ Π½Π° Π½Π΅Π³ΠΎ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ², Π΅ΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠ΅ ΠΎΡΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠΌ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡΡΠΈΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ² ΠΈ Π½ΠΎΡΠΌ ΠΠΎΠ½ΡΡΠΈΡΡΡΠΈΠΈ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡΠ°ΠΊ, ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ β ΡΡΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π²Π½ΡΡΡΠΈ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ²Π° ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎ-ΠΏΡΠ°Π²ΠΎΠ²ΡΡ Π½ΠΎΡΠΌ Π² ΡΠ΅Π»ΡΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²Π·ΡΡΡΡ Π½Π° ΡΠ΅Π±Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ².
ΠΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΡΠ°Π±ΠΎΡΡ Π²ΠΎΠ·Π»Π°Π³Π°Π΅ΡΡΡ Π½Π° Π½ΠΎΡΠΌΠΎΡΠ²ΠΎΡΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΡΠ³Π°Π½Ρ. Π ΡΠΎΡΡΠΈΠΉΡΠΊΠΎΠΌ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°ΡΠ΅Π»ΡΡΡΠ²Π΅ ΡΠ°ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠ΅ΡΠΈΡΡ ΠΎΡΡΡΠ»ΠΊΠΈ ΠΊ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡΠΌ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠ΅ Π½ΠΎΡΠΌΡ, ΡΠ΅ΠΌ Π΄ΠΎΡΠ»ΠΎΠ²Π½ΡΠ΅ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠΎΠΏΡΠΎΡ ΠΎ ΡΠΎΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ°Π²Π° Π² Π Π€ ΠΎΡΡΠ°ΡΡΡΡ ΠΎΡΠΊΡΡΡΡΠΌ.
ΠΠ²ΡΠΎΡ ΡΡΠ°ΡΡΠΈ: ΠΠ΅Π»ΠΎΡΡΠΎΠ²Π° ΠΠ°ΡΠ°Π»ΡΡ
Π£Π΄Π°ΡΠΈ Π²Π°ΠΌ! ΠΠΎ ΡΠΊΠΎΡΡΡ Π²ΡΡΡΠ΅Ρ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°Ρ Π±Π»ΠΎΠ³Π° KtoNaNovenkogo.ru
ΠΡΠ° ΡΡΠ°ΡΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΡΡΠ±ΡΠΈΠΊΠ°ΠΌ:
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΎΡΠ·ΡΠ²Ρ (1)
Π Π±ΠΎΠ³ΠΈ, ΠΊΠ°ΠΊΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΌΡΡΠ»ΠΎΠ²Π°ΡΡΡ ΡΠ»ΠΎΠ² Π½Π΅ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ. ΠΠ΅ΡΠΆΠ΅Π»ΠΈ Π½Π΅Π»ΡΠ·Ρ ΠΊΠ°ΠΊ-ΡΠΎ ΠΏΠΎΠΏΡΠΎΡΠ΅ Π²ΡΡ Π½Π°Π·ΡΠ²Π°ΡΡ. Π ΡΡΠΎ ΡΠ»ΠΎΠ²ΠΎ Π΅ΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉ Π²ΡΠ³ΠΎΠ²ΠΎΡΠΈ.
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°
Π― Ρ ΠΎΡΠ΅Π» Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠΎΡ ΠΏΠΎΡΡ Π΅ΡΡ Π² ΠΈΡΠ»Π΅, Π½ΠΎ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΌΠΎΠ³, ΠΎ ΠΈΡΠΎΠ½ΠΈΡ, ΡΠ΅ΡΠΈΡΡ, ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π½Π°Π·Π²Π°ΡΡ. Π£Π΄Π°ΡΠ½ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ ΠΏΡΠΈΡΠ»ΠΈ ΠΌΠ½Π΅ Π² Π³ΠΎΠ»ΠΎΠ²Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π΄ΠΎΠΊΠ»Π°Π΄Π° ΠΠ΅ΠΉΡ ΠΡΠ΅Π³ΠΎΡΠΈ Π½Π° CppCon, ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ Ρ Π½Π°ΠΊΠΎΠ½Π΅Ρ ΠΌΠΎΠ³Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ, ΠΊΠ°ΠΊ Π½Π΅ Π½Π°Π΄ΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΡΠΈΠΌΠ΅Ρ 1: std::log2p1()
Π’ΠΎ Π΅ΡΡΡ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ Π½Π°ΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΡΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π΅Π³ΠΎ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ Π»ΠΎΠ³Π°ΡΠΈΡΠΌ ΠΏΠ»ΡΡ 1, Π° Π΄Π»Ρ 0 Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ 0. Π ΡΡΠΎ Π½Π΅ ΡΠΊΠΎΠ»ΡΠ½Π°Ρ Π·Π°Π΄Π°ΡΠΊΠ° Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ if/else, ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π²Π΅ΡΡ β ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±ΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡΡ Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΠΎΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠ³Π°Π΄Π°ΡΡΡΡ ΠΎΠ± ΡΡΠΎΠΌ ΠΏΠΎ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
ΠΡΠΈΠΌΠ΅Ρ 2: std::bless()
Π‘Π΅ΠΉΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π½Π΅ ΠΏΡΠΎ Π½Π°Π·Π²Π°Π½ΠΈΡ
ΠΠ΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΎΡΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅: Π² Π‘++ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠ° ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°. Π§ΡΠΎ, Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅, Π»ΠΎΠ³ΠΈΡΠ½ΠΎ: Π² ΠΎΠ±ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π°Π±ΠΎΡ ΡΠΎΡΠ΅Π΄Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΈ βΠ² Π΄Π΅ΡΡΡΠΈ Π±Π°ΠΉΡΠ°Ρ ΡΠΏΡΠ°Π²Π° ΠΎΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ i β ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ. ΠΡΠΎ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅Ρ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎΡ ΡΠ°ΠΊΡΡ ΡΠΏΡΠΎΡΡΠ½Π½ΡΡ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ std::vector ::reserve() :
ΠΡ Π²ΡΠ΄Π΅Π»ΠΈΠ»ΠΈ ΠΏΠ°ΠΌΡΡΡ, ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ»ΠΈ Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΡΠ°Π΅ΠΌΡΡ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΊΡΠ΄Π° Π½Π°Π΄ΠΎ. ΠΠΎΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΡΠΈ ΡΡΡΠΎΡΠΊΠΈ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ Π²Π½Π΅ ΠΌΠ°ΡΡΠΈΠ²Π°!
Π Π°Π·ΡΠΌΠ΅Π΅ΡΡΡ, Π²ΠΈΠ½ΠΎΠ²Π°Ρ ΡΡΡ Π½Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠ°ΠΌΠΎΠΌ ΡΡΠ°Π½Π΄Π°ΡΡΠ΅ C++, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅Ρ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠΎΡ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΡΠ°Π·ΡΠΌΠ½ΡΠΉ ΠΊΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°. ΠΠΎΡΡΠΎΠΌΡ P0593 ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠ°Π½Π΄Π°ΡΡ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΠ½ΠΊΡΠΈΡΠΌ (Π²ΡΠΎΠ΄Π΅ ::operator new ΠΈ std::malloc ) ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ. ΠΡΠ΅ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ ΠΈΠΌΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π±ΡΠ΄ΡΡ ΠΌΠ°Π³ΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ Π½Π° ΠΌΠ°ΡΡΠΈΠ²Ρ, ΠΈ Ρ Π½ΠΈΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
ΠΡΡ Π΅ΡΡ Π½Π΅ ΠΏΡΠΎ Π½Π°Π·Π²Π°Π½ΠΈΡ, ΠΏΠΎΡΠ΅ΡΠΏΠΈΡΠ΅ ΡΠ΅ΠΊΡΠ½Π΄ΠΎΡΠΊΡ.
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ std::bless Π±ΡΠ»ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ.
ΠΠ½Π΅ ΡΡΠΈ Π²Π°ΡΠΈΠ°Π½ΡΡ Π½Π΅ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΈΡΡ.
ΠΡΠΈΠΌΠ΅Ρ 3: std::partial_sort_copy()
ΠΠ΅ΠΉΡ ΡΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ, ΡΡΠΎ std::partial_sort_copy β ΡΠ°ΠΊ ΡΠ΅Π±Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΠΈ Ρ Ρ Π½Π΅ΠΉ ΡΠΎΠ³Π»Π°ΡΠ΅Π½.
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°
ΠΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠΉ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ, ΡΡΡΠΎΠ³ΠΎ Π³ΠΎΠ²ΠΎΡΡ, Π½Π΅Π²Π΅ΡΠ½ΡΠΌ: ΠΎΠ½ΠΈ Π²ΡΠ΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΡΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ. std::log2p1() Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΈΡΠ°Π΅Ρ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ Π»ΠΎΠ³Π°ΡΠΈΡΠΌ ΠΈ ΠΏΡΠΈΠ±Π°Π²Π»ΡΠ΅Ρ ΠΊ Π½Π΅ΠΌΡ Π΅Π΄ΠΈΠ½ΠΈΡΡ; implicitly_create_objects() ΠΈΠΌΠΏΠ»ΠΈΡΠΈΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π° std::partial_sort_copy() ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΈ ΠΊΠΎΠΏΠΈΡΡΠ΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π²ΡΠ΅ ΡΡΠΈ Π½Π°Π·Π²Π°Π½ΠΈΡ ΠΌΠ½Π΅ Π½Π΅ Π½ΡΠ°Π²ΡΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΈ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½Ρ.
Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ Π½ΠΈΠΊΠΎΠΌΡ Π½Π΅ Π½Π°Π΄ΠΎ βΠΈΠΌΠΏΠ»ΠΈΡΠΈΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡβ ΠΈΠ»ΠΈ βΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ½ΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ ΠΊΠΎΠΏΠΈΠΈ Π²Π΅ΠΊΡΠΎΡΠ°β β ΠΈΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΌΡΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ 5 Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΠ±ΡΠ²Π°Π½ΠΈΡ. Π§ΡΠΎ-ΡΠΎ ΡΠΈΠΏΠ° recycle_storage() (ΡΡΠΎ ΡΠΎΠΆΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π½Π°Π·Π²Π°Π½ΠΈΡ std::bless ) ΠΈ top_n_sorted() Π±ΡΠ»ΠΎ Π±Ρ Π³ΠΎΡΠ°Π·Π΄ΠΎ ΠΏΠΎΠ½ΡΡΠ½Π΅Π΅.
ΠΠ°Π·ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ Π΅Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ β Π·Π½Π°ΡΠΈΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π° ΡΠΎΠ²Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ Π½Π΅ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΈ Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. ΠΡΠ΅Π³Π΄Π° Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΈ ΠΊΠ°ΠΊ ΡΡΠ½ΠΊΡΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ.
ΠΡΠΈΠΌΠ΅Ρ 4: std::popcount()
Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, std::popcount() ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½Π° Π²ΡΠ·ΡΠ²Π°Π΅Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ popcount. ΠΡΠΎ Π½Π΅ ΡΠΎ ΡΡΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ β ΡΡΠΎ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅.
Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ°Π·ΡΡΠ² ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΡΠ·ΡΠΊΠ° ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ Π½Π΅ ΡΠ°ΠΊ ΡΠΆ ΠΈ Π²Π΅Π»ΠΈΠΊ. ΠΠ½ΡΡΡΡΠΊΡΠΈΡ, ΡΡΠΈΡΠ°ΡΡΠ°Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΅Π΄ΠΈΠ½ΠΈΡ Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ ΡΠ»ΠΎΠ²Π΅, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ popcount Ρ ΡΠ΅ΡΡΠΈΠ΄Π΅ΡΡΡΡΡ . ΠΠ»Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°, Ρ ΠΎΡΡ ΡΠΊΠΎΠ»ΡΠΊΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΠ΅Π³ΠΎΡΡ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ Ρ Π±ΠΈΡΠ°ΠΌΠΈ, ΡΠ°ΠΊΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ.
ΠΡΡΠ°ΡΠΈ, Ρ ΠΎΡΠΎΡΠΈΠΉ Π²ΠΎΠΏΡΠΎΡ: ΠΏΡΠΈΠ΄ΡΠΌΡΠ²Π°ΡΡ Π»ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΡ, ΡΠ΄ΠΎΠ±Π½ΡΠ΅ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ², ΠΈΠ»ΠΈ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΡΠΈΠ²ΡΡΠ½ΡΠ΅ Π΄Π»Ρ ΠΎΠ»Π΄ΡΠ°Π³ΠΎΠ²?
Π₯ΡΠΏΠΏΠΈ-ΡΠ½Π΄?
Π Π°Π·ΡΠΌΠ΅Π΅ΡΡΡ, std::partial_sort_copy() ΡΠΆΠ΅ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΡΡΡ β ΠΏΠΎΠ΄ ΡΡΠΈΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠ½Π° Π²ΠΎΡΠ»Π° Π² ΡΡΠ°Π½Π΄Π°ΡΡ Π΅ΡΡ Π² 1998. ΠΠΎ Ρ ΠΎΡΡ Π±Ρ std::log2p1 ΠΈΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ, ΠΈ ΡΠΎ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ.
ΠΡΠΈΠ΄ΡΠΌΡΠ²Π°Ρ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π½ΡΠΆΠ½ΠΎ Π΄ΡΠΌΠ°ΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΡΠΎ ΠΈΠΌΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈ ΡΠ΅Π³ΠΎ ΠΎΠ½ ΠΎΡ Π½ΠΈΡ Π·Π°Ρ ΠΎΡΠ΅Ρ. ΠΠ°ΠΊ Π²ΡΡΠ°Π·ΠΈΠ»Π°ΡΡ ΠΠ΅ΠΉΡ, ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠΌΠΏΠ°ΡΠΈΠΈ.
Π ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ²ΡΠ·ΡΠΌΠΈ «ΠΠ±ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅», «Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ» ΠΈ «ΠΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ» Π½Π° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ΅ ΠΊΠ»Π°ΡΡΠΎΠ² UML?
Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ UML ΠΊΠ°ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΎΠ³ΠΎ Π²ΠΎΠΏΡΠΎΡΠ° Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
β ΡΠ²ΡΠ·Ρ generalization Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊΠ»Π°ΡΡ (Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊ) ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ Π½Π° Π΄ΡΡΠ³ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅ (ΡΠΎΠ΄ΠΈΡΠ΅Π»Π΅). Π‘ΡΠ΄Ρ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ, Π·Π΄Π΅ΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΊΠ»Π°ΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌ ΠΊΠ»Π°ΡΡΠΎΠΌ (Ρ.Π΅. ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΅Π³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ).
β ΡΠ²ΡΠ·Ρ realization Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ ΠΊΠ»Π°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠ΅ Π΄ΡΡΠ³ΠΈΠΌ ΠΊΠ»Π°ΡΡΠΎΠΌ. Π‘ΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ Π·Π΄Π΅ΡΡ ΡΠ΅ΡΡ ΠΈΠ΄Π΅Ρ ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ ΠΈΠ»ΠΈ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΌ ΠΊΠ»Π°ΡΡΠΎΠΌ.
β ΡΠ²ΡΠ·Ρ implementation β ΡΡΠΎ ΠΏΠΎΠ΄ΡΠΈΠΏ ΡΠ²ΡΠ·ΠΈ realization. Π‘ΡΠ΄Ρ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ, Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ ΡΠ²ΡΠ·ΠΈ β ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ, Π° Π½Π° Π΄ΡΡΠ³ΠΎΠΌ β ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ (interface Π² Java, ΡΠΈΡΡΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ Π² C++).
ΠΠΎΠΏΡΠΎΡ ΠΏΠ΅ΡΠ²ΡΠΉ: Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΠ½Π° ΠΌΠΎΡ ΡΡΠ°ΠΊΡΠΎΠ²ΠΊΠ° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ?
ΠΠΎΠΏΡΠΎΡ Π²ΡΠΎΡΠΎΠΉ: ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡΡΠΈΡΠ°ΡΡ realization ΠΏΠΎΠ΄ΡΠΈΠΏΠΎΠΌ ΡΠ²ΡΠ·ΠΈ generalization?
ΠΠΎΠΏΡΠΎΡ ΡΡΠ΅ΡΠΈΠΉ: Π΅ΡΠ»ΠΈ ΡΠ·ΡΠΊ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ (C++ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ) ΠΈ ΠΊΠ»Π°ΡΡ Π½Π°ΡΠ»Π΅Π΄ΡΠ΅ΡΡΡ ΠΎΡ Π΄Π²ΡΡ
ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ
ΠΊΠ»Π°ΡΡΠΎΠ² β ΠΊΠ°ΠΊΠ°Ρ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠΎΠΌ ΠΈ ΡΡΠΏΠ΅ΡΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ?
Π‘Π΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ ΠΈ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΌ ΠΊΠ»Π°ΡΡΠΎΠΌ Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ. Π ΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΡΡΠ½ΠΎΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° β Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π°ΡΠΏΠ΅ΠΊΡΠΎΠ² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ° (Π»ΠΈΠ±ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½Π°Π΄ ΡΡΠΈΠΌ ΠΊΠ»Π°ΡΡΠΎΠΌ).
ΠΠΎΠΏΡΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΡΡΠΉ: ΠΌΠΎΠΆΠ΅Ρ Π»ΠΈ Π±ΡΡΡ ΡΠ°ΠΊΠΎΠ΅, ΡΡΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΏΠΎΡΠΎΠΆΠ΄Π°Π΅Ρ ΡΠ²ΡΠ·Ρ generalization, Π° Π² Π΄ΡΡΠ³ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β realization.
Π’ΡΠ°ΠΊΡΠΎΠ²ΠΊΠ° Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ Π²Π΅ΡΠ½Π°, Ρ ΡΠ΅ΠΉΡΠ°Ρ ΠΈΠ·Π»ΠΎΠΆΡ ΡΠ²ΠΎΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅, Π° ΡΠΆ ΡΡΠ°Π²Π½ΠΈΡΡ Π½Π°ΡΠΈ Π²Π·Π³Π»ΡΠ΄Ρ Π·Π°Π΄Π°ΡΠ° Π½Π΅ ΠΈΠ· ΠΏΡΠΎΡΡΡΡ )) ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ°Π·Π»ΠΈΡΠΈΠ΅ ΠΏΠΎΠ½ΡΡΠΈΠΉ Π² UML ΠΈ ΠΠΠ.
Π ΡΠ΅Π»ΠΎΠΌ ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠΌ: Π‘ΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡ: ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ (ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΡΠ²ΠΎΠΉΡΡΠ² ΠΈ ΠΏΡΠΎΡΠΈΡ ΡΠ·ΡΠΊΠΎΠ²ΡΡ ΡΡΡΠΊ) ΠΈ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡ (ΡΡΠΎ Π½Π΅ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ ΠΏΡΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠΈ Ρ Π΅Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ).
Generalization. ΠΠΎΠ³Π΄Π° Ρ ΠΊΠ»Π°ΡΡΠΎΠ² ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅ΡΡΠΈ ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠΌΡ β ΠΎΠ±ΠΎΠ±ΡΠΈΡΡ. ΠΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΡ ΠΎΠ΄ΡΡΠ²ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π°ΡΠΏΠ΅ΠΊΡΠ° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΈ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎΠ΅ ΡΡ ΠΎΠ΄ΡΡΠ²ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°.
Realization. ΠΠΎΠ³Π΄Π° ΡΠ°ΡΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΡΠ½ΠΎΡΠΈΡΡΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ β ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ. Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΏΡΠΈΠ΅ΠΌ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ Π΄Π΅Π»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, Π½ΠΎ UML ΠΏΠΎΡ ΠΎΠΆΠ΅ ΡΡΠΈΡΠ°Π΅Ρ ΠΈΠ½Π°ΡΠ΅.
Implementation. Π ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ UML ΡΡΠΎ ΠΊΠ°ΠΊ ΡΠ°Π· ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ Π½Π΅ΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π½Π° ΡΠΎΡΡΠ°Π²Π½ΡΠ΅ ΡΠ°ΡΡΠΈ. Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΠΎΠ²ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΎΠ΅β¦
ΠΠ±ΡΠΎΠ»ΡΡΠ½ΠΎΠ΅ ΡΡ ΠΎΠ΄ΡΡΠ²ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π² Generalization Π·Π²ΡΡΠΈΡ ΡΠ±Π΅Π΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π° Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠ΅ΡΡΡ Π² ΡΡΠΎ Π²Π΅ΡΠΈΡΡ. ΠΠΎ Π½Π°ΠΏΡΡΠ³Π°Π΅Ρ ΠΌΠΎΠΌΠ΅Π½Ρ, ΡΡΠΎ Π·Π°ΡΠ°ΡΡΡΡ Π² ΠΊΠ»Π°ΡΡΠ°Ρ -Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠ°Ρ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ Π±ΡΠ»ΠΎ Ρ ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ, Π° Π² ΠΊΠΎΠ΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠ΅ΡΠΈΡΡ ΠΏΠΎΠ½ΠΈΠΆΠ°ΡΡΠ΅Π΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° (downcasting).
Implementation ΠΊΠ°ΠΊ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π½Π° ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΠΌΠ½Π΅ ΡΠΎΠΆΠ΅ Π½ΡΠ°Π²ΠΈΡΡΡ. Π’ΠΎΠ»ΡΠΊΠΎ Π½Π΅ ΠΏΠΎΠ½ΡΠ», ΠΏΠΎΡΠ΅ΠΌΡ Ρ ΡΠ΅Π±Ρ implementation Π² UML ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡΠ΅Ρ Ρ implementation Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ. ΠΡΠ»ΠΈ ΡΡΠ΄ΠΈΡΡ ΠΏΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Java ΠΈΠ»ΠΈ PHP, ΡΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΊΠ»Π°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ implement. ΠΠ΄ΠΈΠ½ ΠΊΠ»Π°ΡΡ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, IComparable, IMovable ΠΈ IDrawable). ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΊΠ»Π°ΡΡ β ΡΡΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π·Π°Π΄Π°Ρ Π²Π½ΡΡΡΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°, ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΠΈ Π²ΡΠ΅Ρ
ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², ΠΈΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌΡΡ
ResultingClassInterface =
Π ΠΌΠ°Π½ΡΠ°Π»Π΅ IBM ΠΏΠΎ UML ΠΏΡΠΎ ΡΠ²ΡΠ·Ρ implementation Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅: The implementation relationship specifies that the realizing classifier must conform to the contract that the provided interface specifies. ΠΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ by design Π²ΠΎ Π²ΡΠ΅Ρ
ΡΠ·ΡΠΊΠ°Ρ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΡ
ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π² ΡΠ°ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡΡΡ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² Java, PHP ΠΈΠ»ΠΈ C#.
Π ΡΠΎΠΌ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠΌ ΠΌΠ°Π½ΡΠ°Π»Π΅ ΠΏΡΠΎ ΡΠ²ΡΠ·Ρ realization Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π²ΠΎΡ ΡΡΠΎ: You can model the following situations using realization relationships:
A component is realized by a set of classifiers that provide its implementation. ΠΠΎΡ ΡΡΠΎ ΡΠΆΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΡ
ΠΎΠΆΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΊΠ»Π°ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ²ΠΎΠΈΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡ, ΡΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡΡΡ ΠΈΠ· ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΊΠ»Π°ΡΡΠΎΠ², Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΎΠ½ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π² ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ realization ΠΏΠ»ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅Π³ΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ. ΠΡΠΈ ΡΡΠΎΠΌ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅ΡΡΡ, ΡΡΠΎ Π½ΠΎΠ²ΡΠΉ ΠΊΠ»Π°ΡΡ Π±ΡΠ΄Π΅Ρ Π½Π° 100 % ΠΏΠΎΠ²ΡΠΎΡΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΊΠ»Π°ΡΡΠΎΠ², ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΎΠ½ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π½ΠΈΠΊΡΠΎ Π½Π΅ Π·Π°ΠΏΡΠ΅ΡΠ°Π΅Ρ Π½Π°ΠΌ realization ΠΏΡΠΎΠ²Π΅ΡΠ½ΡΡΡ Π·Π° ΡΡΠ΅Ρ Π΄Π΅Π»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ Π²ΠΎΠ²ΡΠ΅ Π±Π΅Π· Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅. ΠΡΠΈ ΡΡΠΎΠΌ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΡΠ²ΡΠ·ΠΈ (ΠΏΡΠ½ΠΊΡΠΈΡΠ½Π°Ρ Π»ΠΈΠ½ΠΈΡ Ρ ΠΏΡΡΡΡΠΌ ΡΡΠ΅ΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠΌ Π½Π° ΠΊΠΎΠ½ΡΠ΅) Π½ΠΈΡΠ΅ΠΌ Π½Π΅ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Π²ΠΈΠ΄Π° ΡΠ²ΡΠ·ΠΈ implementation ΠΈ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ ΡΠ²ΡΠ·Ρ generalization, ΡΡΠΎ ΠΌΠ΅Π½Ρ Π²Π²ΠΎΠ΄ΠΈΡ Π² Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅. ΠΠ΅Π»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΆΠ΅ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ°Ρ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΡΠ²ΡΠ·ΡΡ association (ΡΠΎΠ±ΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π΄Π»Ρ agregation ΠΈΠ»ΠΈ composition). Π ΠΈΡΠΊΠ½Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ, ΡΡΠΎ ΡΠ²ΡΠ·Ρ realization Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π²ΠΌΠ΅ΡΡΠΎ association ΠΏΡΠΈ Π΄Π΅Π»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΠ‘Π ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ°, Π²Ρ
ΠΎΠ΄ΡΡΠ΅Π³ΠΎ Π² ΡΠ²ΡΠ·Ρ Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ (service provider), ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΠ΅ ΠΎΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ
ΠΌΠ΅ΡΠΎΠ΄Π°Ρ
ΠΊΠ»Π°ΡΡΠ° Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ²ΡΠ·ΠΈ (Ρ.Π΅. ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ Π±ΠΈΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ΅).
ΠΡ ΠΈ ΠΏΠΎΠΊΠ° Π½Π΅ ΡΡΠ΅Π½ Π΄Π»Ρ ΠΌΠ΅Π½Ρ Π²ΠΎΠΏΡΠΎΡ, ΠΊΠ°ΠΊ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΡΡΡΠΏΠ°ΡΡ, ΠΊΠΎΠ³Π΄Π° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π½ΠΎΡΠ΅ΡΡΡΠ½ΡΡ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² + ΠΎΠ΄ΠΈΠ½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π½ΠΈΡ (Π½ΠΎ Π½Π΅ Π²ΡΠ΅!) Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ. ΠΡΠΈΡΠ΅ΠΌ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠ° Π² 99% ΡΠ»ΡΡΠ°Π΅Π² Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Π°. ΠΠΈΡΠ°ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· ΠΊΠ»Π°ΡΡΠΎΠ² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ β Π°Π΄. ΠΡΠ½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΡΡΠΈ ΠΊΠ»Π°ΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡ MyObject implements IInterface, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (Π°-Π»Ρ C# ΠΈΠ»ΠΈ Java) β Π²ΡΠΎΠ΄Π΅ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ. Π ΠΊΠ°ΠΊ ΠΏΡΠΈ ΡΡΠΎΠΌ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° ΠΊΠ»Π°ΡΡΠΎΠ² UML?
Π‘ΠΈΠ΅ Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎβ¦ Π½ΠΈΠΊΠΎΠ³Π΄Π° ΡΠ°ΠΊ Π³Π»ΡΠ±ΠΎΠΊΠΎ Π½Π΅ ΡΡΠ», ΠΈ Π²ΠΎΡβ¦
ΠΠ°ΠΆΠ΅ ΠΏΠΎ-ΡΡΡΡΠΊΠΈ Β«realizationΒ» ΠΈ Β«implementationΒ» ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ β ΡΡΠΎ Ρ Π²ΡΠΎΠ΄Π΅ Π·Π½Π°Π», Π° Π² Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΠ΅ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π΅ Π²ΡΡΡΠ΅ΡΠ°Π» Π½ΠΈΠ³Π΄Π΅. ΠΠΎΠΈΡΠΊ Β«realizationΒ» Π² Π²ΠΈΠΊΠΈ Π½ΠΈΡΠ΅Π³ΠΎ ΡΠΎΠΆΠ΅ Π½Π΅ Π΄Π΅Π», ΡΡΠΎ ΡΠΆΠ΅ Π½Π°ΡΡΠΎΡΠ°ΠΆΠΈΠ²Π°Π΅Ρ. Π Π²ΠΎΡ ΠΏΡΠΎ implementation Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ, ΡΡΠΎ ΡΡΠΎ Π΅ΡΡΡ realization π
Β«Implementation is the realization of an application, or execution of a plan, idea, model, design, specification, standard, algorithm, or policy.Β»
ΠΠ°Π΄Π½ΠΎ, ΠΏΠΎΡΡΠΈΡΠ°Ρ, ΡΡΠΎ ΡΡΠΎ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅.
Π’ΠΎΠ³Π΄Π° ΠΈΠΌΠ΅Π΅ΠΌ, ΡΡΠΎ generalization β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅, Π½Π΅ Π²Π°ΠΆΠ½ΠΎ, ΠΎΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΈΠ»ΠΈ Π½Π΅Ρ.
Implementation β ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° (ΠΈΠ»ΠΈ ΡΠΈΡΡΠΎ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°).
ΠΡΠΎΠ³ΠΎ, ΠΏΡΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ Π²ΠΎΠΏΡΠΎΡ Ρ Π½Π΅ Π·Π½Π°Ρ, ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΡ, Π½ΠΎ Π²ΡΡΠΊΠ°Π·Π°Π» ΡΠ²ΠΎΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅.
ΠΠΎ Π²ΡΠΎΡΠΎΠΌΡ β ΠΌΠΎΠΆΠ½ΠΎ Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΠΎΡΠ½Π΅Π½ΠΈΠ΅ΠΌ, ΡΡΠΎ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ (realized, implemnted) ΡΠΆΠ΅ ΡΠ΅Π°Π»ΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΠΌΠΎΠ³ Π±ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ.
ΠΠΎ ΡΡΠ΅ΡΡΠ΅ΠΌΡ β ΡΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΡΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ²ΡΠ·Π΅ΠΉ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΈΠΏΠ° β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΅ΡΠ»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² β ΡΠΎ Π±ΡΠ΄Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ²ΡΠ·Π΅ΠΉ Β«implementationΒ», ΡΠΎ ΠΆΠ΅ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΈ generalization.
ΠΠΎ ΡΠ΅ΡΠ²Π΅ΡΡΠΎΠΌΡ β Π΅ΡΠ»ΠΈ Π²Π»Π°ΡΡ ΡΠ°ΡΡΠΈΡΡΠ΅Ρ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΉ ΠΈ ΡΠ°ΠΌ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ (Ρ.Π΅. ΡΠΎΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΌ), ΡΠΎ ΡΡΡ ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ (implementation, realization) β Ρ.Π΅. ΡΡΡ ΡΠΈΡΡΠΎ generalization. Π Π΅ΡΠ»ΠΈ ΡΡΠΎ-ΡΠΎ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ β ΡΠΎ ΡΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ implementation (realization).