ΠΠΈΠΆΠ½ΡΡ ΡΠ°ΡΡΡ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅ - ΡΠ°Π·Π΄Π΅Π» D - ΠΈΠ»Π»ΡΡΡΡΠΈΡΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ:
d := deep_clone (a)
Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΡΠ΅ ΡΡΡΠ»ΠΊΠΈ. ΠΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΏΡΡΠΌΠΎ ΠΈΠ»ΠΈ ΠΊΠΎΡΠ²Π΅Π½Π½ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ O1, Π±ΡΠ΄ΡΡ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½Ρ, ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π½ΠΎΠ²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ O5, O6 ΠΈ O7. ΠΠ΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΠ²ΡΠ·Π΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠ°ΡΡΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ (O1, O2 ΠΈ O3) ΠΈ Π½ΠΎΠ²ΡΠΌΠΈ. ΠΠ±ΡΠ΅ΠΊΡ O5, Π΄ΡΠ±Π»ΠΈΡΡΡΡΠΈΠΉ O1, ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΠ΅Π±Ρ.
Π’Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅ΡΡ Π³Π»ΡΠ±ΠΎΠΊΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎΡΡΠΈ. Π€ΡΠ½ΠΊΡΠΈΡ deep_equal ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ Π΄Π²Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΠΈΡ ΡΡΡΡΠΊΡΡΡΠ½ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΡΡΡ. Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅, deep_equal Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌΠΎ Π΄Π»Ρ Π»ΡΠ±ΠΎΠΉ ΠΏΠ°ΡΡ ΠΈΠ· a, b ΠΈ d. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ equal (a, c) ΠΈΡΡΠΈΠ½Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΠΎΠ»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² O1 ΠΈ O4 ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½Ρ, equal (a, d) - Π»ΠΎΠΆΠ½ΠΎ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ equal Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌΠΎ Π½ΠΈ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΡΡ ΠΈΠ· d ΠΈ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΎΡΡΠ°Π²ΡΠ΅ΠΉΡΡ ΡΡΠΎΠΉΠΊΠΈ. Π ΡΠ΅Π»ΠΎΠΌ ΠΈΠΌΠ΅ΡΡ ΠΌΠ΅ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°:
[x]. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ x := clone (y) ΠΈΠ»ΠΈ Π²ΡΠ·ΠΎΠ²Π° x.copy (y), Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ equal (x, y) ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ true (Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ ΡΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ΅ΡΡΠΎ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΈΠΌΠ΅Π΅Ρ Π»ΠΈ y Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ void).
[x]. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ x := deep_clone (y), Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ deep_equal (x, y) ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ true.
ΠΡΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° Π±ΡΠ΄ΡΡ ΠΎΡΡΠ°ΠΆΠ΅Π½Ρ Π² ΠΏΠΎΡΡΡΡΠ»ΠΎΠ²ΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ.
ΠΠ»ΡΠ±ΠΎΠΊΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅: ΠΏΠ΅ΡΠ²ΡΠΉ Π²Π·Π³Π»ΡΠ΄ Π½Π° ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌΠΎΡΡΡ
ΠΠ·ΡΡΠ΅Π½ΠΈΠ΅ Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠ΅ΠΌΡ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΠ-ΠΌΠ΅ΡΠΎΠ΄Π°, Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ Π΅Π³ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ Π² ΡΡΠ΅Π΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
ΠΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π½Π΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Π»ΠΎ Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π²Π²ΠΎΠ΄Π° ΠΈ Π²ΡΠ²ΠΎΠ΄Π°. ΠΠΎ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΠ-ΡΠΈΡΡΠ΅ΠΌΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΌΠΈΡΠΎΠΌ ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ. Π’Π°ΠΊΠΎΠ΅ ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° - ΡΠ°ΠΉΠ»Ρ, Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ΅ΡΡ.
ΠΠ»Ρ ΠΏΡΠΎΡΡΠΎΡΡ Π² ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡΡ, ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΊ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠΈ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠ»Ρ ΡΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠΌΠΈΠ½Ρ "Π²ΠΎΠ·Π²ΡΠ°ΡΠΈΡΡ" (retrieval) ΠΈ "ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ" (storage), Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°ΠΌ Π²Π²ΠΎΠ΄ ΠΈ Π²ΡΠ²ΠΎΠ΄ (input, output). ΠΠ·ΡΡΠ°Π΅ΠΌΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡΠΌΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈ ΠΏΠΎΡΡΠ»ΠΊΠ΅ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΏΠΎ ΡΠ΅ΡΠΈ.ΠΠ»Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² ΡΠ°ΠΊΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΊΠ°ΠΊ POINT ΠΈΠ»ΠΈ BOOK1 ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π½ΠΎΠ²ΠΈΠ½ΠΊΠΎΠΉ. ΠΡΠΈ ΠΊΠ»Π°ΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ΅ΡΠ²ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΡΡΠΎΠΉ Π»Π΅ΠΊΡΠΈΠΈ, ΠΈΠΌΠ΅ΡΡ Π°ΡΡΠΈΠ±ΡΡΡ ΡΠ°ΠΊΠΈΡ ΡΠΈΠΏΠΎΠ², ΠΊΠ°ΠΊ INTEGER, REAL ΠΈ STRING, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎΠ΅ Π²Π½Π΅ΡΠ½Π΅Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΈΠ· ΡΠ°ΠΉΠ»Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π² ΡΠ·ΡΠΊΠ΅ ΠΠ°ΡΠΊΠ°Π»Ρ ΠΈΠ»ΠΈ ΡΡΡΡΠΊΡΡΡ ΡΠ·ΡΠΊΠ° Π‘. ΠΠ»Ρ ΡΡΠΈΡ Ρ ΠΎΡΠΎΡΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΠΎΡΡΠΎΠΌΡ ΡΠ΅Π·ΠΎΠ½Π½ΠΎ ΠΎΠΆΠΈΠ΄Π°ΡΡ, ΡΡΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ Π² Ρ ΠΎΡΠΎΡΠ΅ΠΌ ΠΠ-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΎΠ±ΡΠ΅Π³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΠΊΠ°ΠΆΠ΅ΠΌ read ΠΈ write, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ clone ΠΈ copy Π±ΡΠ΄ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΊΠ»Π°ΡΡΠΎΠ².
ΠΠΎ ΡΠ°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π½Π°Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ Π½Π΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π³Π»Π°Π²Π½ΡΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ - ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΡΡΠ»ΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π°Π΄ΡΠ΅ΡΠ°ΠΌΠΈ ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ»ΠΈ ΡΠ΅ΠΌ-ΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ, ΡΠΎ ΠΈ Π΄Π»Ρ Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ΅Π΅ Π²Π½Π΅ΡΠ½Π΅Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. ΠΡΠΎ Π½Π΅ ΡΠ°ΠΌΠ°Ρ ΡΡΡΠ΄Π½Π°Ρ ΡΠ°ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. Π‘Π»ΠΎΠΆΠ½Π΅Π΅ ΠΎΠ±ΡΡΠΎΠΈΡ Π΄Π΅Π»ΠΎ Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ΠΉ ΡΠΌΡΡΠ»Π° ΡΠ°ΠΌΠΈΡ ΡΡΡΠ»ΠΎΠΊ. Π‘ΡΡΠ»ΠΊΠΈ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Ρ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ ΠΈ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½Ρ Π² ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². Π’Π°ΠΊ ΡΡΠΎ, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΡ Π½Π°ΡΠΈΠ½Π°Π΅ΠΌ ΠΈΠΌΠ΅ΡΡ Π΄Π΅Π»ΠΎ Ρ Π½Π΅ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ - ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΌΠΈ ΡΡΡΠ»ΠΊΠΈ, Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΡΡΠ°ΡΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ. ΠΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΈ Π²ΡΠ΅Ρ Π΅Π³ΠΎ ΡΠ²ΡΠ·Π½ΠΈΠΊΠΎΠ² (dependents) Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ:
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅: ΡΠ²ΡΠ·Π½ΠΈΠΊΠΈ, ΠΏΡΡΠΌΡΠ΅ ΡΠ²ΡΠ·Π½ΠΈΠΊΠΈ
ΠΡΡΠΌΡΠΌΠΈ ΡΠ²ΡΠ·Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠ΅ ΠΊ Π΅Π³ΠΎ ΡΡΡΠ»ΠΎΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠΌ, Π΅ΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠ²ΡΠ΅ ΠΈΠΌΠ΅ΡΡΡΡ.
Π‘Π²ΡΠ·Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈ (ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ) ΡΠ²ΡΠ·Π½ΠΈΠΊΠΈ Π΅Π³ΠΎ ΠΏΡΡΠΌΡΡ ΡΠ²ΡΠ·Π½ΠΈΠΊΠΎΠ².
ΠΠ»Ρ ΡΡΡΡΠΊΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π½Π° ΡΠΈΡ.8.17, Π±ΡΠ»ΠΎ Π±Ρ Π±Π΅ΡΡΠΌΡΡΠ»Π΅Π½Π½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π² ΡΠ°ΠΉΠ»Π΅ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΏΠΎ ΡΠ΅ΡΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±ΡΠ΅ΠΊΡ O1. ΠΠΏΠ΅ΡΠ°ΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ²ΡΠ·Π½ΠΈΠΊΠΎΠ² O1 - ΠΎΠ±ΡΠ΅ΠΊΡΡ O2 ΠΈ O3.
Π ΠΈΡ. 8.17. Π’ΡΠΈ Π²Π·Π°ΠΈΠΌΠ½ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π»ΡΠ±ΠΎΠΉ ΠΈΠ· ΡΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ ΠΎΡΡΠ°Π²ΡΠΈΠ΅ΡΡ Π΄Π²Π° ΠΊΠ°ΠΊ ΡΠ²ΠΎΠΈΡ ΡΠ²ΡΠ·Π½ΠΈΠΊΠΎΠ². Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π½Π° ΡΠΈΡ.8.18, ΠΎΠ±ΡΠ΅ΠΊΡ W1 ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ, Π½ΠΎ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² B1 ΠΈΠ»ΠΈ B2 ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°ΠΊΠΆΠ΅ ΠΈ W1.
Π ΠΈΡ. 8.18. ΠΠ±ΡΠ΅ΠΊΡΡ Β«BookΒ» ΠΈ Β«WriterΒ»
ΠΠΎΠ½ΡΡΠΈΠ΅ ΡΠ²ΡΠ·Π½ΠΈΠΊΠΎΠ² Π½Π΅ΡΠ²Π½ΠΎ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ deep_equal. ΠΠΎΡ ΠΎΠ±ΡΠ΅Π΅ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ:
ΠΡΠΈΠ½ΡΠΈΠΏ ΠΠ°ΠΌΡΠΊΠ°Π½ΠΈΡ Π‘ΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌΠΎΡΡΠΈ (Persistence Closure principle)
ΠΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΈ ΡΠ²ΡΠ·Π½ΠΈΠΊΠΎΠ² ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΈ ΡΠ²ΡΠ·Π½ΠΈΠΊΠΎΠ² ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π΅ΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Ρ.
ΠΠ°Π·ΠΈΡΠ½ΡΠΌ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠΌ, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠΌ ΡΡΠΈ ΡΠ΅Π»ΠΈ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ STORABLE, Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Base. ΠΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ ΠΊΠ»Π°ΡΡΠ° STORABLE ΡΠ²Π»ΡΡΡΡΡ:
store (f: IO_MEDIUM)
retrieved (f: IO_MEDIUM): STORABLE
ΠΡΠ·ΠΎΠ² x.store (f) ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π² ΡΠ°ΠΉΠ»Π΅, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΌ Ρ f, ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠΉ ΠΊ x, Π²ΠΌΠ΅ΡΡΠ΅ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Π΅Π³ΠΎ ΡΠ²ΡΠ·Π½ΠΈΠΊΠ°ΠΌΠΈ. ΠΠ±ΡΠ΅ΠΊΡ, ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠΉ ΠΊ x, Π½Π°Π·ΡΠ²Π°ΡΡ Π³ΠΎΠ»ΠΎΠ²Π½ΡΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ Ρ ΡΠ°Π½ΠΈΠΌΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ. ΠΠΎΡΠΎΠΆΠ΄Π°ΡΡΠΈΠΉ ΠΊΠ»Π°ΡΡ Π΄Π»Ρ x Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠΌ STORABLE. ΠΡΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠ° Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈ Π½Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ Π½Π° ΡΠ²ΡΠ·Π½ΠΈΠΊΠΎΠ².
ΠΠ»Π°ΡΡ IO_MEDIUM ΡΡΠΎ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΊΠ»Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Base, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ, Π½ΠΎ ΠΈ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΏΠΎ ΡΠ΅ΡΠΈ. ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, f Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ void, Π° ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π²ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ Π·Π°ΠΏΠΈΡΡ.
ΠΡΠ·ΠΎΠ² retrieved (f) Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΡΡΠΊΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΡΡ ΡΡΡΡΠΊΡΡΡΠ΅, ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌΠΎΠΉ Π² f ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ store. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ retrieved - ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ°Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΡΡΡΠ»ΠΊΡ Π½Π° Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ².
ΠΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ STORABLE ΡΡΠΎ Π½Π°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π²Π°ΠΆΠ½ΠΎΠ³ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌΠΎΡΡΠΈ (persistence) ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΠ±ΡΠ΅ΠΊΡ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΠΈ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΡΠ΅ΡΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ»Π°ΡΡ STORABLE ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠΈΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Ρ ΡΡΠ΄ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ:
[x]. Π ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌΠΎΠΉ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠΉ ΡΡΡΡΠΊΡΡΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΠΎ - Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ. ΠΡΠ»ΠΎ Π±Ρ ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌΠ΅ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ.
[x]. ΠΠ°ΠΊ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅, ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΠΎΡΡ ΠΈΠ»ΠΈ ΠΏΠΎ ΠΊΠ»ΡΡΡ, ΠΊΠ°ΠΊ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ .
[x]. ΠΡΠ·ΠΎΠ² retrieved Π²ΠΎΡΡΠΎΠ·Π΄Π°Π΅Ρ ΠΏΠΎΠ»Π½ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ°ΠΊΠΈΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ°ΡΡΠ΅ΠΉ ΡΡΡΡΠΊΡΡΡΡ, Π΅ΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΡΠΊΡΡΡΡ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΌΠΈ.
Π ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΡΡΠΎΠΉ ΡΠ΅ΠΌΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΎΡ ΠΏΠΎΠ½ΡΡΠΈΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΊ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΏΠΎΠ½ΡΡΠΈΡ ΠΠ-Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΠΎΠΌΡ Π² Π»Π΅ΠΊΡΠΈΠΈ 13 ΠΊΡΡΡΠ° "ΠΡΠ½ΠΎΠ²Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ". Π Π½Π΅ΠΉ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ STORABLE ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠ²ΠΎΠ»ΡΡΠΈΡ ΡΡ Π΅ΠΌ ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ.
ΠΡΠΌΠ΅ΡΠ΅Π½Π½ΡΠ΅ Π²ΡΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° STORABLE Π½ΠΈΡΠΊΠΎΠ»ΡΠΊΠΎ Π½Π΅ ΡΠΌΠ°Π»ΡΡΡ Π΅Π³ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠ΅Π½Π½ΠΎΡΡΡ. Π₯ΠΎΡΠΎΡΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΡΡΠΎ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° - ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π³Π»Π°Π²Π½ΡΡ ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΠΈΠΉ Π½Π° ΠΏΡΡΠΈ ΡΠΈΡΠΎΠΊΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ Π² ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎΠΌ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ. ΠΠ΅Π· Π½Π΅Π³ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΡΡΠ΅Π±ΡΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡΠΊΠΈΡ ΡΡΠΈΠ»ΠΈΠΉ: Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΈΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°, ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ ΠΎΠ±Ρ ΠΎΠ΄Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ . ΠΠΎ Ρ ΡΠΆΠ΅ Π²ΡΠ΅Π³ΠΎ - ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π²Π½ΠΎΠ²Ρ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΡΠΈΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌ, Π²Π½ΠΎΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ.
ΠΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ STORABLE ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΅ΡΠΈΡΡ Π²ΡΠ΅ ΡΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΎΠ²Π° ΡΡΡΡΠΊΡΡΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ, ΡΡΠΈΡΡΠ²Π°Ρ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ²ΠΎΠ»ΡΡΠΈΡ ΠΠ.