Π ΠΈΡΡΠ½ΠΊΠΈ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ ΡΡ Π΅ΠΌΡ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
ΠΠ²ΡΠΎΡ admin ΠΠ° ΡΡΠ΅Π½ΠΈΠ΅ 7 ΠΌΠΈΠ½ ΠΡΠΎΡΠΌΠΎΡΡΠΎΠ² 1 ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ΠΎ ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
- Π ΠΈΡΡΠ½ΠΊΠΈ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ, ΡΡ Π΅ΠΌΡ
- ΠΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΊ ΡΠ»ΠΎΠΆΠ½ΠΎΠΌΡ
- Π¨Π°Π±Π»ΠΎΠ½Ρ
- ΠΠΈΡΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°
- Π€ΡΡΠΊΡΡ
- Π‘Π΅ΡΠ΄ΡΠ΅
- ΠΡΡΠ³ΠΈΠ΅ ΠΈΠ΄Π΅ΠΈ
- Π‘Π΅ΠΌΠ΅ΠΉΠ½Π°Ρ ΠΡΡΠΊΠ°
- Π‘Π°ΠΉΡ Π΄Π»Ρ ΠΌΠ°ΠΌΠΎΡΠ΅ΠΊ ΠΈ Π±Π°Π±ΡΡΠ΅ΠΊ β Π₯Π ΠΠΠΠ’ΠΠΠ¬ΠΠΠ¦ ΡΠ΅ΠΌΠ΅ΠΉΠ½ΡΡ ΠΊΡΡΠ΅ΠΊ
- ΠΠΎΠΈΡΠΊ
- ΠΠ°ΡΠ° Π³ΡΡΠΏΠΏΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
- Π ΡΠ±ΡΠΈΠΊΠΈ
- Π‘ΡΠ΅ΡΡΠΈΠΊ
- Π‘ΡΠ΅ΡΡΠΈΠΊ Π―Π½Π΄Π΅ΠΊΡ
- ΠΠ½Π°Π»ΠΈΡΠΈΠΊΠ°
- ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 1
- ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 2
- ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 3
- ΠΏΠΎΠΌΠΎΡΡ Π΄Π΅ΡΡΠΌ
- Π‘Π£ΠΠΠ Π ΠΠΠΠΠΠ
- ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 4
- ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 5
- ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 6
- Π£ΠΠΠ Π« ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ (100 Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π΄Π»Ρ Π΄Π΅ΡΠ΅ΠΉ).
- ΠΠ΅Π³ΠΊΠΈΠ΅ ΡΠ·ΠΎΡΡ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ
- ΠΠ»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ Π΄ΠΎΡΠΊΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ².
- Π‘Π»ΠΎΠΆΠ½ΡΠ΅ ΡΠ·ΠΎΡΡ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ
- Π΄Π»Ρ Π΄Π΅ΡΠ΅ΠΉ Π² ΡΠ°Π΄Ρ ΠΈ ΡΠΊΠΎΠ»Π΅.
Π ΠΈΡΡΠ½ΠΊΠΈ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ, ΡΡ Π΅ΠΌΡ
ΠΠ°ΠΌ Π½ΡΠ°Π²ΠΈΡΡΡ Π―ΠΏΠΎΠ½ΠΈΡ? ΠΡ Π»ΡΠ±ΠΈΡΠ΅ ΡΠ°Π·Π³Π°Π΄ΡΠ²Π°ΡΡ ΠΊΡΠΎΡΡΠ²ΠΎΡΠ΄Ρ?ΠΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ, ΠΡ Π΄ΡΠΌΠ°Π΅ΡΠ΅: Β«Π ΡΠ΅ΠΌΡ Π²ΡΠ΅ ΡΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ? Π’Π°ΠΊ Π²ΠΎΡ! Π―ΠΏΠΎΠ½ΡΡ ΠΎΠ±ΠΎΠΆΠ°ΡΡ ΡΠ°Π·Π³Π°Π΄ΡΠ²Π°ΡΡ ΠΊΡΠΎΡΡΠ²ΠΎΡΠ΄Ρ, ΠΈ Π² ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΡ Π»Π΅ΠΆΠΈΡ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ. ΠΡΠ»ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π·Π³Π°Π΄Π°ΡΡ ΠΊΡΠΎΡΡΠ²ΠΎΡΠ΄, ΡΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΡΠΈΡΡΠ½ΠΊΠΈ.
ΠΡΠ²ΠΎΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡ Ρ ΡΠ΄ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠΊΠΎΠ»Ρ ΠΈΠ»ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΎΡΠΎΠ±ΡΠΉ ΡΠ°Π»Π°Π½Ρ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠΎΡΡΠΎ Π±ΡΠ΄ΡΡΠ΅ ΠΊΡΠ΅Π°ΡΠΈΠ²Π½ΡΠΌ! ΠΡΠΈΡΡΡΠΏΠΈΠΌ!
ΠΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΊ ΡΠ»ΠΎΠΆΠ½ΠΎΠΌΡ
ΠΠ»Ρ Π»ΡΠ³ΠΊΠΎΠ³ΠΎ ΠΈ Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΠΈΡΠ΅ ΡΠ΅ΡΡΠ°Π΄Ρ Π² ΠΊΠ»Π΅ΡΠΎΡΠΊΡ, ΠΏΡΠΎΡΡΠΎΠΉ ΠΊΠ°ΡΠ°Π½Π΄Π°Ρ ΠΈ ΡΠ»ΠΎΠΌΠ°ΡΡΠ΅ΡΡ.ΠΡΠΎΡΡΠΎ Π½Π°Π³Π»ΡΠ΄Π½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠΈΡΠ΅ ΡΠΈΡΡΠ½ΠΊΠΈ Π² ΡΠ΅ΡΡΠ°Π΄Ρ.
ΠΡΠ»ΠΈ ΠΡ Π½ΠΎΠ²ΠΈΡΠΎΠΊ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΡΡ Π΅ΠΌΡ, Π° ΠΊΠΎΠ³Π΄Π° Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΡΡΠΎΠΌΡ ΠΏΡΠΎΡΠ΅ΡΡΡ β ΠΏΡΠΈΠ΄ΡΠΌΡΠ²Π°ΠΉΡΠ΅ ΡΠ²ΠΎΠΈ ΠΈΠ΄Π΅ΠΈ!
Π¨Π°Π±Π»ΠΎΠ½Ρ
ΠΠΈΡΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°
Π§ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½Π΅Π΅, ΡΠ΅ΠΌ Π»ΠΈΡΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°? Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΠΎΡΡΡΠ΅Ρ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΡΠΊΠ°ΠΌΠΈ ΠΈ Π½Π°ΡΠ»Π°ΠΆΠ΄Π°ΠΉΡΠ΅ΡΡ ΠΠ°ΡΠΈΠΌ ΡΠ²ΠΎΡΠ΅Π½ΠΈΠ΅ΠΌ!
Π€ΡΡΠΊΡΡ
Π’Π°ΠΊΠΈΠ΅ ΡΠ»Π°Π΄ΠΊΠΈΠ΅ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅! ΠΠΎΠ³Π΄Π° ΠΌΡ ΡΠΌΠΎΡΡΠΈΠΌ Π½Π° Π½ΠΈΡ
, Ρ Π½Π°Ρ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅ΡΡΡ Π½Π°ΡΡΡΠΎΠ΅Π½ΠΈΠ΅, ΠΈ Π½Π°Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΌ Ρ
ΠΎΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ²ΠΎΡ Π΄ΠΎΠ»Ρ Π²ΠΈΡΠ°ΠΌΠΈΠ½ΠΎΠ².
Π‘Π΅ΡΠ΄ΡΠ΅
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ ΡΠΈΡΡΠ½ΠΎΠΊ β Π½Π°Ρ Β«ΠΌΠΎΡΠΎΡ ΠΆΠΈΠ·Π½ΠΈΒ», ΠΊΠΎΡΠΎΡΡΠΉ Π°ΡΡΠΎΡΠΈΠΈΡΡΠ΅ΡΡΡ Ρ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΡΠΌ ΡΡΠ²ΡΡΠ²ΠΎΠΌ Π»ΡΠ±Π²ΠΈ.
ΠΡΡΠ³ΠΈΠ΅ ΠΈΠ΄Π΅ΠΈ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ Π΄ΠΎΠΌΠ°ΡΠ½ΠΈΡ ΠΏΠΈΡΠΎΠΌΡΠ΅Π², ΠΌΠ°ΡΠΈΠ½Ρ, ΡΠ»Π°Π΄ΠΎΡΡΠΈ, Π΄ΠΎΠΌΠ°, Π³ΠΎΡΠΎΠ΄, ΡΠ²Π΅ΡΡ, ΡΠ»Π°Π³ΠΈ ΡΠ°Π·Π½ΡΡ Π³ΠΎΡΡΠ΄Π°ΡΡΡΠ², Π±ΡΠΊΠ²Ρ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅β¦
Π Π΅Π°Π»ΠΈΠ·ΡΠΉ ΡΠ²ΠΎΡΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ! Π ΠΈΡΡΠ½ΠΊΠΈ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ 3D!ΠΡΠΎ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΠ³Π°. Π£ΡΡΠ½ΡΠΌΠΈ Π΄ΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΡΡΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΡΠ²Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° ΡΡΠΏΠΎΠΊΠ°ΠΈΠ²Π°Π΅ΡΡΡ, ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ ΠΌΡΡΠ»Π΅Π½ΠΈΠ΅, ΡΠ»ΡΡΡΠ°Π΅ΡΡΡ ΠΏΠ°ΠΌΡΡΡ ΠΈ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠ΅Π½Π½ΠΎΡΡΡ.
Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΡΠΊΠΈΠ΅ ΠΈ Π½Π°ΡΡΡΠ΅Π½Π½ΡΠ΅ ΡΠΈΡΡΠ½ΠΊΠΈ, Π΄ΠΎΠ±Π°Π²Π»ΡΠΉΡΠ΅ ΠΊΡΠ°ΡΠΊΠΈ Π² ΡΠ²ΠΎΡ ΠΆΠΈΠ·Π½Ρ! Π’Π°ΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΌ ΡΠΈΡΡΠ½ΠΊΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΡΠ°ΡΠΈΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅Ρ, ΡΠΎΠ·Π΄Π°ΡΡ Π°ΠΏΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ ΠΈΠ»ΠΈ ΠΏΠΎΡΠ°Π΄ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³Π° ΡΠ²ΠΎΠΈΠΌ ΠΏΠΎΠ΄Π°ΡΠΊΠΎΠΌ!
ΠΡΡΠΎΡΠ½ΠΈΠΊ
Π‘Π΅ΠΌΠ΅ΠΉΠ½Π°Ρ ΠΡΡΠΊΠ°
Π‘Π°ΠΉΡ Π΄Π»Ρ ΠΌΠ°ΠΌΠΎΡΠ΅ΠΊ ΠΈ Π±Π°Π±ΡΡΠ΅ΠΊ β Π₯Π ΠΠΠΠ’ΠΠΠ¬ΠΠΠ¦ ΡΠ΅ΠΌΠ΅ΠΉΠ½ΡΡ ΠΊΡΡΠ΅ΠΊ
ΠΠΎΠΈΡΠΊ
ΠΠ°ΡΠ° Π³ΡΡΠΏΠΏΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
Π ΡΠ±ΡΠΈΠΊΠΈ
- 8 ΠΌΠ°ΡΡΠ° (16)
- Uncategorized (18)
- ΠΠΈΠΆΡΡΠ΅ΡΠΈΡ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΡΠΊΠ°ΠΌΠΈ (4)
- Π²Π°Π»Π΅Π½ΡΠΈΠ½ΠΎΠ² Π΄Π΅Π½Ρ (14)
- Π²ΡΠΏΠ΅ΡΠΊΠ° ΠΈ ΡΠ΄ΠΎΠ±Π° (6)
- Π²ΡΠ·Π°Π½ΠΈΠ΅ (2)
- Π³ΠΎΡΡΠΈ Π½Π° ΠΏΠΎΡΠΎΠ³Π΅ (1)
- Π΄Π°ΡΠ½ΡΠ΅ ΠΏΠΎΠ΄Π΅Π»ΠΊΠΈ (18)
- Π΄Π°ΡΠ½ΡΠ΅ ΠΏΠΎΡΡΡΠΎΠΉΠΊΠΈ (24)
- ΠΠ΅ΡΠΈ ΠΎΠ±ΡΠ°ΡΡΡΡ (1)
- Π΄ΠΈΠ·Π°ΠΉΠ½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΠ° (22)
- ΠΈΠ³ΡΡ Π½Π° ΠΏΡΠΎΠ³ΡΠ»ΠΊΠ΅ (3)
- ΠΈΠ³ΡΡ Ρ Π΄Π΅ΡΡΠΌΠΈ (1)
- ΠΊΠ°ΠΊ ΡΡΠΈΠ»ΡΠ½ΠΎ ΠΎΠ΄Π΅Π²Π°ΡΡΡΡ (49)
- ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ (49)
- ΠΊΡΠ°ΡΠΈΠΌ Π½ΠΎΠ³ΡΠΈ (Π½Π΅ΠΉΠ»-Π°ΡΡ) (23)
- Π½ΠΎΠ²ΡΠΉ Π³ΠΎΠ΄ (61)
- ΠΎΠΌΠ»Π΅ΡΡ ΠΈ Π·Π°ΠΏΠ΅ΠΊΠ°Π½ΠΊΠΈ (1)
- ΠΏΠΎΠ΄Π°ΡΠΊΠΈ (6)
- ΠΏΠΎΠ΄Π΅Π»ΠΊΠΈ ΠΈΠ· Π±ΡΠΌΠ°Π³ΠΈ (52)
- ΠΏΠΎΠ΄Π΅Π»ΠΊΠΈ ΠΈΠ· ΡΠΊΠ°Π½ΠΈ (9)
- ΠΏΡΠΈΡΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» (33)
- Π Π°Π±ΠΎΡΠ° ΠΈ Π±ΠΈΠ·Π½Π΅Ρ (1)
- ΡΠ°Π΄ ΠΈ ΠΎΠ³ΠΎΡΠΎΠ΄ (1)
- ΡΠ°Π»Π°ΡΡ (1)
- ΡΠ²Π°Π΄ΡΠ±Π° (8)
- ΡΡΠΈΡΡ ΡΠ°ΠΌΠΈΠΌ (2)
- ΡΡΠΈΠΌ ΡΠΈΡΠΎΠ²Π°ΡΡ (12)
Π‘ΡΠ΅ΡΡΠΈΠΊ
Π‘ΡΠ΅ΡΡΠΈΠΊ Π―Π½Π΄Π΅ΠΊΡ
ΠΠ½Π°Π»ΠΈΡΠΈΠΊΠ°
ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 1
ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 2
ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 3
ΠΏΠΎΠΌΠΎΡΡ Π΄Π΅ΡΡΠΌ
Π‘Π£ΠΠΠ Π ΠΠΠΠΠΠ
ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 4
ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 5
ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΡΠΉ Π±Π»ΠΎΠΊ 6
Π£ΠΠΠ Π« ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ (100 Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π΄Π»Ρ Π΄Π΅ΡΠ΅ΠΉ).

ΠΠΎΠ±ΡΠΎΠ³ΠΎ Π΄Π½Ρ Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊΠ°ΠΌ-ΠΏΠ΅Π΄Π°Π³ΠΎΠ³Π°ΠΌ ΠΈ Π΄Π΅ΡΡΠΌ Π΄ΠΎΡΠΊΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΈ ΠΌΠ»Π°Π΄ΡΠ΅Π³ΠΎ ΡΠΊΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ° β Π΄Π»Ρ Π²Π°Ρ Ρ Π²ΡΠ³ΡΡΠΆΠ°Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΊΡΠ°ΡΠΈΠ²ΡΡ ΡΠ·ΠΎΡΠΎΠ² Π΄Π»Ρ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ. Π ΡΡΠ°ΡΡΠ΅ΠΉ Π³ΡΡΠΏΠΏΠ΅ Π΄Π΅ΡΡΠΊΠΎΠ³ΠΎ ΡΠ°Π΄Π° Π²ΠΎΡΠΏΠΈΡΠ°ΡΠ΅Π»Ρ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π°Π²ΡΠΊΠΎΠ² ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΠΏΠΈΡΡΡΠ΅Π³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°, Π΄Π΅ΡΠΈ ΠΎΡΡΠ°ΡΠΈΠ²Π°ΡΡ Π½Π°Π²ΡΠΊΠΈ ΠΊΠ°Π»Π»ΠΈΠ³ΡΠ°ΡΠΈΠΈ Π½Π° ΡΡΠ΅Π½Π°ΠΆΠ΅ΡΠ°Ρ -ΡΠ·ΠΎΡΠ°Ρ Π² ΡΠ΅ΡΡΠ°Π΄ΡΡ Π² ΠΊΠ»Π΅ΡΠΎΡΠΊΡ. ΠΠΎΡ ΠΌΠΈΡΡΠΈΡ Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½Ρ β ΠΏΠΎΠΌΠΎΡΡ ΠΏΠ΅Π΄Π°Π³ΠΎΠ³Π°ΠΌ Π½Π°ΠΉΡΠΈ ΠΊΡΠ°ΡΠΈΠ²ΡΠ΅ ΠΈ Π½Π΅ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΠ·ΠΎΡΡ Π΄Π»Ρ ΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π΄Π΅ΡΡΠΌΠΈ. ΠΠ΄Π΅ΡΡ Π±ΡΠ΄ΡΡ Π»Π΅Π³ΠΊΠΈΠ΅ ΡΠ·ΠΎΡΡ Π΄Π»Ρ Π΄ΠΎΡΠΊΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ² ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π΄Π»Ρ ΡΠΊΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ². ΠΡΠ°ΡΠΈΠ²ΡΠ΅, Π½Π΅ΠΎΠ±ΡΡΠ½ΡΠ΅ ΠΎΡΠ½Π°ΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΡΡΠΊΠΎΠΉ ΠΈΠ»ΠΈ ΡΠ²Π΅ΡΠ½ΡΠΌΠΈ ΠΊΠ°ΡΠ°Π½Π΄Π°ΡΠ°ΠΌΠΈ. ΠΡΠΎ Π·Π°Π΄Π°Π½ΠΈΡ Π½Π° ΠΌΠ΅Π»ΠΊΡΡ ΠΌΠΎΡΠΎΡΠΈΠΊΡ, Π½Π° Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, Π»ΠΎΠ³ΠΈΠΊΡ ΠΈ Π³Π»Π°Π·ΠΎΠΌΠ΅Ρ. ΠΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΡΠ»Π°Π΄ΠΈΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Β«Π³Π»Π°Π·-ΡΡΠΊΠ°Β» ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ. ΠΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΡΠΌ ΠΈ ΡΡΠΊΡ ΠΊ Π±ΡΠ΄ΡΡΠ΅ΠΉ ΡΠΊΠΎΠ»ΡΠ½ΠΎΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ°ΠΊ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΡΠ·ΠΎΡΡ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ Π΄Π»Ρ Π΄Π΅ΡΠ΅ΠΉ Π²Ρ ΡΠ΅Π³ΠΎΠ΄Π½Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ Π² ΡΠ²ΠΎΡ ΠΊΠΎΠΏΠΈΠ»ΠΊΡ ΠΏΠ΅Π΄Π°Π³ΠΎΠ³Π°.
ΠΠ΅Π³ΠΊΠΈΠ΅ ΡΠ·ΠΎΡΡ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ
ΠΠ»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ Π΄ΠΎΡΠΊΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ².
Π 5-6 Π»Π΅Ρ Π²ΠΎΡΠΏΠΈΡΠ°ΡΠ΅Π»Ρ Π΄Π°Π΅Ρ Π΄Π΅ΡΡΠΌ ΠΏΠΎΡΠΈΠ»ΡΠ½ΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ β ΡΡΠΈΡΡΠΉ ΠΏΠΎ ΠΎΠ±ΡΠ°Π·ΡΡ, ΠΏΠΎΠ²ΡΠΎΡΠΈ ΡΠ·ΠΎΡ, ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈ ΠΎΡΠ½Π°ΠΌΠ΅Π½Ρ, Π²ΡΠ»ΠΎΠΆΠΈ ΡΠ΅ΡΠΈΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΡΠ΄ ΠΈΠ· Π³ΠΎΡΠΎΠ²ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΡΡ ΡΡΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΡΡΠ»ΠΎΠΆΠ½ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ°ΡΡΠ°Π΅Ρ Π·Π°ΠΌΡΡΠ»ΠΎΠ²Π°ΡΡΠΌΠΈ Π΄Π΅ΡΠ°Π»ΡΠΌΠΈ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ.
ΠΠ½Π°ΡΠ°Π»Π΅ ΡΠ΅Π±Π΅Π½ΠΊΡ Π½Π°Π΄ΠΎ Π΄Π°ΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΠΏΡΠΎΡΡΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ β ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΈΠ²ΡΠΊ ΠΊ Π’ΠΠΠΠΠ£ ΠΠΠΠ£ ΠΠΠ―Π’ΠΠΠ¬ΠΠΠ‘Π’Π β ΠΏΡΠΎΡΡΠΎ ΠΊΠ°ΠΊ ΠΊ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΠΈ Π·Π°Π΄Π°ΡΠΈ.
ΠΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ Ρ Π»Π΅Π³ΠΊΠΈΠΌΠΈ ΡΠ·ΠΎΡΠ°ΠΌΠΈ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ Π΄Π»Ρ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΡ Π΄Π΅ΡΠ΅ΠΉ.
ΠΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡ Ρ ΠΊΠ»Π°ΡΡΠΈΠΊΠΈ. ΠΠ΄Π½Π° Π»ΠΈΠ½ΠΈΡ, ΠΎΠ½Π° Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½Π° ΠΈ ΠΈΠ·Π³ΠΈΠ±Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ Π·ΠΌΠ΅ΠΉΠΊΠ°. Π Π²ΠΎΡ Π΄Π²Π° Π²ΠΈΠ΄Π° ΠΈΠ·Π³ΠΈΠ±ΠΎΠ² ΡΡΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ β ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΡΠΉ ΠΈ Ρ Π²ΡΠΏΠ°Π΄Π°ΠΌΠΈ Π²Π½ΠΈΠ·.
Π ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°ΠΆΠΎΠΊ β ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° ΠΊ Π·ΠΌΠ΅ΠΉΠΊΠ΅ (ΡΠΆΠ΅ ΠΏΠΎΡΠΎΠΌ) ΠΏΡΠΈΡΠΈΡΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΊΠ°ΠΊ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π΄ΠΎΡΠΈΡΠΎΠ²ΠΊΠ° ΡΠΆΠ΅ Π΄ΡΡΠ³ΠΈΠΌ ΡΠ²Π΅ΡΠΎΠΌ ΠΊΠ°ΡΠ°Π½Π΄Π°ΡΠ° (ΡΡΠ΅ΡΠΈΠΉ ΠΈ ΡΠ΅ΡΠ²Π΅ΡΡΡΠΉ ΡΠ·ΠΎΡ Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅).
ΠΠΎΡΠΎΠΌ ΠΏΠΎΠΊΠ°ΠΆΠΈΡΠ΅ ΡΠ΅Π±Π΅Π½ΠΊΡ ΠΊΠ°ΠΊ ΠΠΠ ΠΠΠΠΠ ΠΌΠΎΠ³ΡΡ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π·ΡΠ±ΡΠΈΠΊΠ°ΠΌΠΈ (ΡΠ·ΠΎΡΡ Π½ΠΈΠΆΠ΅) ΠΈ ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ·ΠΎΡ ΠΈΠ· ΡΠ΅ΠΏΠΎΡΠΊΠΈ ΡΠΎΠΌΠ±ΠΎΠ²β¦ ΠΈΠ»ΠΈ ΡΠ΅ΠΏΠΎΡΠΊΠΈ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ². ΠΡΠ»ΠΈΡΠ½ΡΠΉ ΠΏΠ»Π°Π²Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° ΠΊ ΠΎΠ±ΡΠ΅ΠΌΠ½ΡΠΌ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΡΠΌ ΡΠΈΠ³ΡΡΠ°ΠΌ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°ΠΏ β Π’ΠΠΠ‘Π’Π«Π Π£ΠΠΠ Π« ΠΊΠΎΠ³Π΄Π° Π½Π°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΆΠ΅ Π½Π΅ ΡΠ·ΠΊΠ°Ρ ΡΠΎΠ½ΠΊΠ°Ρ Π»ΠΈΠ½ΠΈΡ, Π° ΡΠΎΠ»ΡΡΠ°Ρ Π² ΡΠΈΡΠΈΠ½Ρ ΠΊΠ»Π΅ΡΠΊΠΈ. Π’ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ ΡΠ²ΠΎΠΈ Π²Π°ΡΠΈΠ°Π½ΡΡ, ΠΈΠ»ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡΠΌΠΈ ΡΠ·ΠΎΡΠ°ΠΌΠΈ Π² ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°Ρ Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅.
ΠΡΠ»ΠΈ ΡΠ΅Π±Π΅Π½ΠΎΠΊ Ρ ΠΎΡΠΎΡΠΎ ΡΠΏΡΠ°Π²ΠΈΠ»ΡΡ Ρ ΠΏΠ»ΡΡΠΈΠΊΠ°ΠΌΠΈ, Π΄Π°ΠΉΡΠ΅ Π΅ΠΌΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π³ β Π·Π°ΠΎΡΡΡΠ΅Π½Π½ΡΠ΅ ΠΏΠ»ΡΡΠΈΠΊΠΈ (ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ Π½Π° ΡΠΈΠ½Π΅-Π³ΠΎΠ»ΡΠ±ΡΠ΅ ΡΠ·ΠΎΡΡ Π½Π° ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°Ρ Π½ΠΈΠΆΠ΅) β Π½ΠΎ ΠΏΠΎΠΊΠ° ΠΎΠ΄Π½ΠΎΡΠ²Π΅ΡΠ½ΡΠ΅ ΠΈ Π±Π΅Π· ΡΠΊΡΠ΅ΡΠΈΠ²Π°Π½ΠΈΡ Π»ΠΈΠ½ΠΈΠΉ ΠΏΠΎ ΡΠ΅Π½ΡΡΡ.
Π₯ΠΎΡΠΎΡΠΎ Π΄ΠΎΡΠΊΠΎΠ»ΡΠ½ΠΈΠΊΠΈ ΠΎΠ²Π»Π°Π΄Π΅Π²Π°ΡΡ Π»Π΅ΡΠ΅Π½ΠΊΠΎΠΉ β ΡΡΠΎΡ Π²Π΅ΡΠ΅Π»ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠ»ΡΠΆΠΈΡ Π΄Π»Ρ Π½ΠΈΡ ΡΠ°Π·Π³ΡΡΠ·ΠΎΡΠ½ΡΠΌ Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ. Π Π°Π·ΡΠ΅ΡΠΈΡΠ΅ Π΄Π΅ΡΡΠΌ Π½Π°ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠΏΠ΅Π½ΡΠΊΠΈ ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ°. ΠΠ»ΠΈ Π΄ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΡΡΠΏΠ΅Π½ΡΠΊΠ°Ρ ΡΠ³ΠΎΠ΄ΠΊΠΈ ΠΈΠ»ΠΈ Π·Π΅ΡΠ½ΡΡΠΊΠΈ Π΄Π»Ρ ΠΏΡΠΈΡΠ΅ΠΊ, Π° ΡΠ²Π΅ΡΡ Ρ ΡΠ°ΠΌΡ ΠΏΡΠΈΡΠΊΡ.
ΠΠΎΡΠ°Π·Π΄ΠΎ ΠΏΠΎΠ·ΠΆΠ΅ ΡΡΠΎΠΈΡ Π½Π°ΡΡΠΈΡΡ ΡΠ΅Π±Π΅Π½ΠΊΠ° ΠΠΠΠΠΠ«Π ΠΠΠΠΠ―Π β ΠΈ ΡΡΡ ΡΠΎΠΆΠ΅ Π½Π°Π΄ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡ Ρ Π»Π΅Π³ΠΊΠΈΡ ΡΠ·ΠΎΡΠΎΠ² β ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΡ Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ. Π ΡΡΠΎΠ±Ρ ΡΡΠ° ΠΏΠ»Π°Π²Π½ΠΎΡΡΡ Π±ΡΠ»Π° ΡΡΠΈΠΌΠ΅ΡΡΠΈΡΠ½Π° Π½Π° ΡΠΎΡΠ΅Π΄Π½ΠΈΡ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°Ρ β ΠΊΠ°ΠΊ ΡΠ»ΡΠΏΠΊΠ° Π³ΡΠΈΠ±Π°, ΠΊΠ°ΠΊ ΠΊΡΡΠ³Π»Π°Ρ ΠΊΡΡΡΠ° Π΄ΠΎΠΌΠΈΠΊΠ°β¦
Π§ΡΠΎΠ±Ρ ΡΠ΅Π±Π΅Π½ΠΎΠΊ Π½Π΅ ΡΡΡΠ°Π», ΡΠ΅ΡΠ΅Π΄ΡΠΉΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΠΉ β Π΄Π°ΠΉΡΠ΅ ΡΠ΅ΠΏΠΎΡΠΊΡ Π»Π΅Π³ΠΊΠΈΡ
ΡΠ·ΠΎΡΠΎΠ², ΠΏΠΎΡΠΎΠΌ ΡΠ»ΠΎΠΆΠ½ΡΠΉ, ΡΡΠ΅Π±ΡΡΡΠΈΠΉ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ ΠΈ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠ΅Π½ΠΈΡ ΡΠΌΠ° ΠΈ ΡΡΠΊΠΈ, ΠΈ ΠΏΠΎΡΠΎΠΌ Π΄Π²Π° Π»Π΅Π³ΠΊΠΈΠΉ Π΄Π»Ρ ΡΠ΄ΠΎΠ²ΠΎΠ»ΡΡΡΠ²ΠΈΡ ΠΈ ΡΠ°ΡΡΠ»Π°Π±Π»Π΅Π½ΠΈΡ.
ΠΠΎΠ΄Π±ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ·ΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Ρ Π΄Π΅Π²ΠΎΡΠΊΠ°ΠΌ, ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ Π½Π° ΡΠ²Π΅ΡΡ, ΠΊΠΎΠ½ΡΠ΅ΡΡ, ΠΌΠΎΡΠΎΠΆΠ΅Π½ΠΎΠ΅β¦
Π ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ Π³ΠΎΡΠΎΠ²ΡΡΠ΅ ΡΠ΅ΡΡΠ°Π΄ΠΈ Π² ΠΊΠ»Π΅ΡΠΎΡΠΊΡ Ρ ΡΠ·ΠΎΡΠ°ΠΌΠΈ Π΄Π»Ρ ΠΌΠ°Π»ΡΡΠΈΠΊΠΎΠ², ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ Π½Π° ΠΊΠΎΠ»Π΅ΡΠ° ΠΌΠ°ΡΠΈΠ½Ρ, Π½Π°ΡΠΎΡ, ΡΠΎΠ±ΠΎΡΠ°, ΡΠ΅ΡΡΠ΅ΡΠ΅Π½ΠΊΠΈ, ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΡΠ΅ ΠΈΠ³ΡΡ.
ΠΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ΅Π°Π»ΡΠ½ΡΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ³ΡΠ°ΡΡ Π² ΡΠ·ΠΎΡΠ°Ρ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ. Π ΠΏΠΎΠΊΠ°ΠΆΠΈΡΠ΅ Π΄Π΅ΡΡΠΌ ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ. ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡΠ΅ ΠΈΠΌ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΠΈΠΊΠΎΠ²ΡΡ ΡΡΡΠΊΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎΠΉ ΠΊΠ°ΡΠ°Π½Π΄Π°Ρ β Π½ΠΎ ΠΏΠ°ΡΠΊΡ ΡΠ²Π΅ΡΠ½ΡΡ ΠΊΠ°ΡΠ°Π½Π΄Π°ΡΠ΅ΠΉ ΠΈΠ»ΠΈ ΠΌΠ΅Π»ΠΊΠΎΠ² Π΄Π»Ρ Π·Π°ΠΊΡΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ.
Π‘Π»ΠΎΠΆΠ½ΡΠ΅ ΡΠ·ΠΎΡΡ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ
Π΄Π»Ρ Π΄Π΅ΡΠ΅ΠΉ Π² ΡΠ°Π΄Ρ ΠΈ ΡΠΊΠΎΠ»Π΅.
Π’Π°Π»Π°Π½ΡΠ»ΠΈΠ²ΡΠΌ ΠΈ Π½Π°Π±ΠΈΠ²ΡΠΈΠΌ ΡΡΠΊΡ Π² ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ·ΠΎΡΠΎΠ² Π΄ΠΎΡΠΊΠΎΠ»ΡΠ½ΠΈΠΊΠ°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΡΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΎΡΠ½Π°ΠΌΠ΅Π½ΡΡ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ. ΠΡΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΊΠΎΡΠΈΡΠΊΠΈ-ΠΏΠ»Π΅ΡΠ΅Π½ΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°ΠΆΠΈ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΏΡΠΎΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π΄Π΅ΡΠ°Π»ΡΠΌΠΈ (ΠΏΡΠΈΡΠΊΠΈ, ΡΠ»ΠΈΡΠΊΠΈ, ΠΊΡΠ°Π±Ρ).
Π£Π·ΠΎΡΡ Ρ ΠΊΠΎΡΠΈΡΠΊΠ°ΠΌΠΈ, Ρ
ΠΎΡΠΎΡΠΎ Π²ΠΎΡΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π΄Π΅Π²ΠΎΡΠΊΠΈ, ΠΎΠ½ΠΈ Π±ΡΡΡΡΠΎ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡ ΡΡΠ°ΠΏΡ Π½Π°Π½Π΅ΡΠ΅Π½ΠΈΡ ΡΠ·ΠΎΡΠ° ΠΈ Π½Π΅ ΠΏΡΡΠ°ΡΡΡΡ Π² ΠΊΠ»Π΅ΡΠΊΠ°Ρ
ΠΈ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΡ
Π»ΠΈΠ½ΠΈΠΉ (ΠΊΠΎΠ³Π΄Π° Π²ΠΏΡΠ°Π²ΠΎ, Π° ΠΊΠΎΠ³Π΄Π° Π²Π»Π΅Π²ΠΎ ΠΏΠΎΠ²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡ Π»ΠΈΠ½ΠΈΡ ΡΠ·ΠΎΡΠ°).
ΠΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠ·ΠΎΡΠ° ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ Ρ ΠΏΡΠΈΡΠΊΠ°ΠΌΠΈ β ΡΠ°Π·Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ Π½Π° Π²ΡΠ΅ ΡΠΈΠΏΡ ΡΡΠ»ΠΎΠΆΠ½Π΅Π½ΠΈΡ.
Π Π²ΠΎΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ Π΄Π»Ρ Π΄Π΅Π²ΠΎΡΠ΅ΠΊ β ΡΠ·ΠΎΡΡ Ρ ΡΠ²Π΅ΡΠ°ΠΌΠΈ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ
ΠΠ°Π»ΡΡΠΈΡΠΊΠ°ΠΌ ΠΎΡΠ΅Π½Ρ Π½ΡΠ°Π²ΡΡΡΡ ΡΡΠ±Ρ (ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π°ΠΊΡΠ»Ρ) ΠΈ ΡΠ»ΠΈΡΠΊΠΈ Ρ ΠΊΡΠ°Π±Π°ΠΌΠΈ.
ΠΡΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ, Π·Π°Π½ΠΈΠΌΠ°ΡΡΠΈΠ΅ Π² ΡΠΈΡΠΈΠ½Ρ 5-6 ΠΊΠ»Π΅ΡΠΎΡΠ΅ΠΊ (ΠΊΠ°ΠΊ Π½Π° ΡΠΎΡΠΎ ΡΠ·ΠΎΡΠΎΠ² Π½ΠΈΠΆΠ΅).
Π ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ Π²ΡΠ΅ ΠΌΠ°Π»ΡΡΠΈΠΊΠΈ ΠΎΠ±ΠΎΠΆΠ°ΡΡ ΠΏΠ°ΡΠΎΠ²ΠΎΠ·ΠΈΠΊΠΈ. ΠΡΠΎ Π½Π°ΡΡΠΎΡΡΠ΅Π΅ ΠΏΡΠΈΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ Π΄ΠΎΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ ΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π² Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π²ΠΎΡΠΏΠΈΡΠ°ΡΠ΅Π»Ρ.
Π Π²ΠΎΡ Π½ΠΎΠ²ΠΎΠ³ΠΎΠ΄Π½ΡΡ ΡΠ΅ΠΌΠ° Π² ΡΠ·ΠΎΡΠ°Ρ Π½Π° ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°Ρ β ΠΏΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΌΠΎΡΠΈΠ²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ Π²Ρ ΡΠ°ΠΌΠΈ β ΡΠ½Π΅Π³ΠΎΠ²ΠΈΠΊΠΈ, Π΄Π΅Π΄Ρ ΠΌΠΎΡΠΎΠ·Ρ, Π΅Π»ΠΎΠ²ΡΠ΅ Π»Π°ΠΏΠΊΠΈ.
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΏΠ΅Π΄Π°Π³ΠΎΠ³ ΡΠ°ΠΌ ΡΠ΅ΡΠ°Π΅Ρ Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ»ΠΎΠΆΠ½ΡΡΡ Π·Π°Π΄Π°Π½ΠΈΠ΅ Ρ ΡΠ·ΠΎΡΠ°ΠΌΠΈ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ. ΠΡ Π·Π½Π°Π΅ΠΌ ΡΠ²ΠΎΠΈΡ
Π΄Π΅ΡΠ΅ΠΉ ΠΈ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ, ΠΊΠΎΠ³Π΄Π° Π·Π°Π΄Π°ΡΠΈ ΠΏΡΠΈΠ½ΠΎΡΡΡ ΡΠ΅Π±Π΅Π½ΠΊΡ ΡΠ΄ΠΎΠ²ΠΎΠ»ΡΡΡΠ²ΠΈΠ΅ ΠΎΡ ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ ΠΊΠ°ΠΊ Π²Π°ΠΆΠ½ΠΎ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ ΡΡΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π½Π° ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅Π½ΠΈΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π°Π΄Π°Π½ΠΈΡ.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ ΡΡΠ°ΠΏΠΎΠΌ Π² ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ, Π±ΡΠ΄Π΅Ρ ΡΠΆΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π½Π° ΡΡΠΈΡΠΎΠ²ΠΊΡ ΠΊΡΡΠΏΠ½ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ ΠΏΠΎ ΠΎΠ±ΡΠ°Π·ΡΡ, Π½Π°ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ Π² ΡΠ΅ΡΡΠ°Π΄ΠΈ ΡΡΠ΄ΠΎΠΌ Ρ ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΌ ΠΏΡΡΡΡΠΌ ΠΌΠ΅ΡΡΠΎΠΌ.
ΠΠ°ΡΠΈΠ½Π°Π΅ΠΌ Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ Ρ ΠΏΡΡΠΌΡΠΌΠΈ Π»ΠΈΠ½ΠΈΡΠΌΠΈ.
Π ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌ ΡΠΆΠ΅ ΠΊΡΡΠΏΠ½ΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ
Π ΡΡΠ°ΡΡΠ΅ΠΌ Π²ΠΎΠ·ΡΠ°ΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°Π²Π°ΡΡ Π΄Π΅ΡΡΠΌ ΡΠ΅Π»ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ Π½Π° ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ Π½Π° ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°Ρ .
Π ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ Π² Π΄ΠΎΡΠΊΠΎΠ»ΡΠ½ΠΎΠΌ Π²ΠΎΠ·ΡΠ°ΡΡΠ΅, ΠΈ Π² Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΊΠΎΠ»Π΅ Π΄Π΅ΡΠΈ ΡΠΏΡΠ°ΠΆΠ½ΡΡΡΡΡ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
Π΄ΠΈΠΊΡΠ°Π½ΡΠΎΠ².
ΠΠΎ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅ Ρ ΠΌΠ΅Π½Ρ ΡΠΎΠΆΠ΅ ΡΠΎΠ±ΡΠ°Π½Π° Π±ΠΎΠ»ΡΡΠ°Ρ ΠΊΡΠ°ΡΠΈΠ²Π°Ρ ΠΊΠΎΠΏΠΈΠ»ΠΊΠ° ΠΈΠ΄Π΅ΠΉ ΠΈ ΡΡ
Π΅ΠΌ β Π² ΡΡΠ°ΡΡΠ΅ ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΠΠΠ’ΠΠΠ’ (145 ΡΠΈΠ»ΡΡΡΠΎΠ² ΠΏΠΎ ΠΊΠ»Π΅ΡΠΎΡΠΊΠ°ΠΌ).
Π£Π΄Π°ΡΠ½ΡΡ
Π²Π°ΠΌ Π½Π°Ρ
ΠΎΠ΄ΠΎΠΊ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΡ
ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊ.
ΠΠ»ΡΠ³Π° ΠΠ»ΠΈΡΠ΅Π²ΡΠΊΠ°Ρ, ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΡΠ°ΠΉΡΠ° Π‘Π΅ΠΌΠ΅ΠΉΠ½Π°Ρ ΠΡΡΠΊΠ°.
ΠΡΡΠΎΡΠ½ΠΈΠΊ
python β ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π½ΠΎΡΡΠ±ΡΠΊΠΎΠ² iPython
ΡΠΏΡΠΎΡΠΈΠ»
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ 5 ΠΌΠ΅ΡΡΡΠ΅Π² Π½Π°Π·Π°Π΄
ΠΡΠΎΡΠΌΠΎΡΡΠ΅Π½ΠΎ 7ΠΊ ΡΠ°Π·
ΠΠ°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ UML plantuml Π² Π½ΠΎΡΡΠ±ΡΠΊΠ΅ iPython? ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π½Π°Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠΈΡΡΠ½ΠΎΠΊ UML ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ Π±ΡΠΌΠ°ΠΆΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅.
ΠΠΎΠ³ΡΠ³Π»ΠΈΠ² Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅, Ρ Π½Π°ΡΠ΅Π» ΠΎΠ΄ΠΈΠ½ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Asymptote Π² Π±Π»ΠΎΠΊΠ½ΠΎΡΠ΅ iPython, Π° Π·Π°ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π» ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ plantuml Π΄Π»Ρ Π±Π»ΠΎΠΊΠ½ΠΎΡΠ° iPython. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠ΅ ΡΠ°Π³ΠΈ:
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Π½ΠΎΡΡΠ±ΡΠΊ iPython ΠΈΠ· ΠΌΠΎΠ΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ: $HOME/workshop.
# cd $HOME/ΠΌΠ°ΡΡΠ΅ΡΡΠΊΠ°Ρ # Π±Π»ΠΎΠΊΠ½ΠΎΡ ipython --pylab Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠΊΡΠΈΠΏΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π² $HOME/workshop.e.g:plantuml.py
""" Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Plantuml Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΈΡΡΠ½ΠΊΠΎΠ² UML ΠΈΠ· Π±Π»ΠΎΠΊΠ½ΠΎΡΠ° ipython. """ ΠΈΠΌΠΏΠΎΡΡ ΠΠ‘ ΠΈΠ· IPython.core.magic ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠΉΡΠ΅ magics_class, cell_magic, Magics ΠΈΠ· IPython.display ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, SVG @magics_class ΠΊΠ»Π°ΡΡ Plantuml(ΠΠ°Π³ΠΈΡ): @cell_magic def plantuml(Ρ, ΡΡΡΠΎΠΊΠ°, ΡΡΠ΅ΠΉΠΊΠ°): """Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΈ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΠ΅ ΡΠΈΠ³ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Plantuml. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅: %java -jar plantuml.jar -tsvg ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° """ self.filename = ΡΡΡΠΎΠΊΠ° self.code = ΡΡΠ΅ΠΉΠΊΠ° Ρ open(self.filename + ".plt", "w") Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ°ΠΉΠ»Π°: file.
write(self.code) os.system("java -jar plantuml.jar -tsvg %s.plt" % self.filename) Π²Π΅ΡΠ½ΡΡΡ SVG(ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°=self.filename+".svg") Π΄Π΅Ρ load_ipython_extension (ipython): ipython.register_magics (ΡΠ°ΡΡΠ΅Π½ΠΈΠ΅)
ΠΠ°Π³ΡΡΠ·ΠΈΡΠ΅ plantuml.jar Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° Π² ΠΏΠ°ΠΏΠΊΡ $HOME/workshop.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠΉ Π±Π»ΠΎΠΊΠ½ΠΎΡ iPython, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΡΠ΅ΠΉΠΊΡ Π½ΠΈΠΆΠ΅, ΡΡΠΎΠ±Ρ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅, ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅:
%install_ext plantuml.py %reload_ext ΠΏΠ»Π°Π½ΡΡΠΌΠ»
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΡΠ΅ΠΉΠΊΡ plantuml Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°.
%%plantuml ΡΠΈΡ.1 @startuml ΠΠ»ΠΈΡΠ° -> ΠΠΎΠ±: Π·Π°ΠΏΡΠΎΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΠΎΠ± --> ΠΠ»ΠΈΡΠ°: ΠΡΠ²Π΅Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ @ΡΠ½Π΄ΡΠΌΠ»
Π’ΠΎΠ³Π΄Π° Π²ΡΠ΅ ΠΈΠ· plantuml Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π½ΠΎΡΡΠ±ΡΠΊΠ΅ iPython.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ:
- ΠΡΠ²ΠΎΠ΄ ΠΎΡΠΈΠ±ΠΊΠΈ plantuml ΠΠ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π² Π±Π»ΠΎΠΊΠ½ΠΎΡΠ΅ iPython, Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π½Π΅Π²Π΅ΡΠ΅Π½ Π² ΠΊΠΎΠ΄Π΅ plantuml. Π±Π»ΠΎΠΊΠ½ΠΎΡ.
- Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΡΠΌΠ°Ρ SVG. ΠΠ΅ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΡΠΌΠ°Ρ PDF ΠΈΠ»ΠΈ PNG.
Π― ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΎΡΡ ΡΠ°ΡΡΠΈΡΠΈΡΡ TiKz, Π½ΠΎ pdflatex Π²ΡΠ΅Π³Π΄Π° Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΎΡΠΌΠ°Ρ ΡΠ°ΠΉΠ»Π° PDF. Π‘Π½Π°ΡΠ°Π»Π° ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² ΡΠΎΡΠΌΠ°Ρ SVG. .ΡΡΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
- python
- uml
- jupyter-notebook
- tikz
- plantuml
1
ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Plantuml UML Π² Π±Π»ΠΎΠΊΠ½ΠΎΡΠ΅ iPython β ΠΎΡΠ»ΠΈΡΠ½Π°Ρ ΠΈΠ΄Π΅Ρ!
ΠΠΌΠ΅ΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π½ΠΊΠΈ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²Π΅Π±-ΡΠ»ΡΠΆΠ±Ρ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
ΠΠ° ΠΎΡΠ½ΠΎΠ²Π΅ javascript API Ρ Π½Π°ΠΏΠΈΡΠ°Π» Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΠΈΠΊ Python Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΡΡΠΎΠΊ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ plantUML.
Π’Π΅ΠΏΠ΅ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ urllib ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ»Π°Π½ΡΡΠΌΠ»Π΅Π½ΠΊΠΎΠ΄Π΅Ρ ΠΈΠ· IPython.core.magic ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠΉΡΠ΅ magics_class, cell_magic, Magics ΠΈΠ· IPython.display ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, SVG @magics_class ΠΊΠ»Π°ΡΡ Plantuml(ΠΠ°Π³ΠΈΡ): @cell_magic def plantuml(Ρ, ΡΡΡΠΎΠΊΠ°, ΡΡΠ΅ΠΉΠΊΠ°): self.filename = ΡΡΡΠΎΠΊΠ° ΡΠ΅Π»Ρ.ΠΊΠΎΠ΄ = "" Π΄Π»Ρ ΡΡΡΠΎΠΊΠΈ Π² cell.split('\n'): Π½ΠΎΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° = ΡΡΡΠΎΠΊΠ°.strip() Π΅ΡΠ»ΠΈ Π½ΠΎΠ²Π°Ρ ΡΡΡΠΎΠΊΠ°: self.code += Π½ΠΎΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° + '\n' uri = "http://www.plantuml.com/plantuml/svg/" + plantumlencoder.compress(self.code) urllib.urlretrive(uri, self.filename) Π²Π΅ΡΠ½ΡΡΡ SVG (ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° = self.filename) Π΄Π΅Ρ load_ipython_extension (ipython): ipython.register_magics (ΡΠ°ΡΡΠ΅Π½ΠΈΠ΅)
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΎΡΠΌΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ URL-Π°Π΄ΡΠ΅Ρ ΠΈ ΠΊΠΎΠ΄ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: ΠΡΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ·Π΄Π°Π΅Ρ png
ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ urllib ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ»Π°Π½ΡΡΠΌΠ»Π΅Π½ΠΊΠΎΠ΄Π΅Ρ ΠΈΠ· IPython.core.magic ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠΉΡΠ΅ magics_class, cell_magic, Magics ΠΈΠ· IPython.display ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, PNG @magics_class ΠΊΠ»Π°ΡΡ Plantuml(ΠΠ°Π³ΠΈΡ): @cell_magic def plantuml(Ρ, ΡΡΡΠΎΠΊΠ°, ΡΡΠ΅ΠΉΠΊΠ°): self.filename = ΡΡΡΠΎΠΊΠ° ΡΠ΅Π»Ρ.ΠΊΠΎΠ΄ = "" Π΄Π»Ρ ΡΡΡΠΎΠΊΠΈ Π² cell.split('\n'): Π½ΠΎΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° = ΡΡΡΠΎΠΊΠ°.strip() Π΅ΡΠ»ΠΈ Π½ΠΎΠ²Π°Ρ ΡΡΡΠΎΠΊΠ°: self.code += Π½ΠΎΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° + '\n' uri = "http://www.plantuml.com/plantuml/png/" + plantumlencoder.compress(self.code) urllib.urlretrive(uri, self.filename) Π²Π΅ΡΠ½ΡΡΡ PNG (ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° = self.filename) Π΄Π΅Ρ load_ipython_extension (ipython): ipython.register_magics(Plantuml)
2
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ°Π³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠ°ΠΊΠ΅Ρ ΡΡΠ΅Π΅ΠΊ PlantUML. ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ iPlantUML@PyPi
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ( pip install iplantuml
) ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠΎΠ΄ plantUML Π² jupyterlab ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π‘Π½Π°ΡΠ°Π»Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠΉΡΠ΅ ΠΏΠ°ΠΊΠ΅Ρ,
import iplantuml
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»Π΅ΡΠΎΡΠ½ΡΡ ΠΌΠ°Π³ΠΈΡ:
%%plantuml @startuml ΠΠ»ΠΈΡΠ° -> ΠΠΎΠ±: Π·Π°ΠΏΡΠΎΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΠΎΠ± --> ΠΠ»ΠΈΡΠ°: ΠΡΠ²Π΅Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ @ΡΠ½Π΄ΡΠΌΠ»
Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΠΊΠ°ΠΆΠΈΡΠ΅ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ Π² Π²ΡΠ²ΠΎΠ΄Π΅ ΡΡΠ΅ΠΉΠΊΠΈ ΠΊΠ°ΠΊ:
2
ΠΠΎΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠΏΡΠΈΠΈ -pipe
plantuml
:
ΠΈΠ· Π·Π°ΠΏΡΡΠΊΠ° ΠΈΠΌΠΏΠΎΡΡΠ° ΠΏΠΎΠ΄ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΈΠ· IPython.core.magic ΠΈΠΌΠΏΠΎΡΡΠ° register_cell_magic ΠΈΠ· IPython.display ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ SVG @register_cell_magic def plantuml(ΡΡΡΠΎΠΊΠ°, ΠΊΠΎΠ΄): cmd = ["plantuml", "-tsvg", "-pipe"] compl = Π·Π°ΠΏΡΡΡΠΈΡΡ (cmd, input=code, text=True, capture_output=True) Π²Π΅ΡΠ½ΡΡΡ SVG (compl.stdout)
ΠΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ Π² ΡΡΠ΅ΠΉΠΊΠ΅. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ ΡΡΠ΅Π½Π°ΡΠΈΡ Π΄Π»Ρ plantuml
Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΡΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ cmd
ΠΊΠ°ΠΊ ΡΠ°ΠΊΠΎΠ²ΠΎΠΉ:
jarpath = "path/to/plantuml.jar" cmd = ["java", "-jar", jarpath, "-tsvg", "-pipe"]
ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅ ΠΊΠΎΠ΄Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ°Π³ΠΈΡ ΡΡΠ΅Π΅ΠΊ %%plantuml
.
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ ΠΈΠ»ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Google
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· Facebook
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΠΏΠΎΡΡΡ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π³ΠΎΡΡΡ
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°
ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π½ΠΎ Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π³ΠΎΡΡΡ
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ, Π½ΠΎ Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ
Fragment β ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΡΡΠΊΡΡΡΡ Π±Π»ΠΎΠΊΠ½ΠΎΡΠ° Jupyter β OUseful.

Π ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΌΠ½Π΅ Π½ΡΠΆΠ΅Π½ Π±ΡΠ» ΠΏΡΠΎΡΡΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π±Π»ΠΎΠΊΠ½ΠΎΡΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π² Π½ΠΈΡ ΡΡΠ΅Π½ΠΊΠΈ ΠΈ ΡΡΠ΅Π΅ΠΊ ΠΊΠΎΠ΄Π°.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΏΡΠΎΡΡΠΎΠΉ Π·Π°ΠΏΠΈΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠΆΠΊΠΈ; ΡΠΈΠ½ΠΈΠΉ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΡΠ΅ΠΉΠΊΡ ΡΡΠ΅Π½ΠΊΠΈ, ΡΠΎΠ·ΠΎΠ²ΡΠΉ β ΠΊΠΎΠ΄ΠΎΠ²ΡΡ ΡΡΠ΅ΠΉΠΊΡ, Π° ΡΠ΅ΡΡΠΉ β ΡΠ°Π·Π΄Π΅Π»ΡΠ΅Ρ ΡΡΠ΅ΠΉΠΊΠΈ. (Π¦Π²Π΅Ρ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ ΡΠ΅Π³ΡΠ»ΠΈΡΡΠ΅ΡΡΡ, ΠΊΠ°ΠΊ ΠΈ Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°Π²Π΅Π½ 0.)
ΠΡΠΈ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π±Π»ΠΎΠΊΠ½ΠΎΡΠΎΠ² ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΏΡΡΡ ΠΊ Π±Π»ΠΎΠΊΠ½ΠΎΡΡ:
ΠΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΡΡΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ this gist .
Π Π°Π·ΠΌΠ΅Ρ ΡΡΠ΅Π΅ΠΊ Π½Π° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
- Π΄Π»Ρ ΡΡΠ΅Π΅ΠΊ ΡΡΠ΅Π½ΠΊΠΈ β ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Β«ΡΠΊΡΠ°Π½Π½ΡΡ
ΡΡΡΠΎΠΊΒ», Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡΡ
ΡΡΠ΅Π½ΠΊΠΎΠΉ ΠΏΡΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ Π½Π° ΡΠΊΡΠ°Π½Π΅ Ρ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡΠΈΡΠΈΠ½ΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΡΠΊΡΠ°Π½Π°;
""" ll = txt.split('\n') _ll = [] Π΄Π»Ρ Π» Π²ΠΎ Π»: #ΠΠΎΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠΊΡΠ°Π½Π½ΡΠΉ ΠΏΠΎΡΠΎΠΊ: ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅ ΡΡΡΠΎΠΊΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π΄Π»ΠΈΠ½Π½Π΅Π΅ `ΡΠΈΡΠΈΠ½Ρ` ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² _ll=_ll+textwrap.wrap(l, ΡΠΈΡΠΈΠ½Π°) n_screen_lines = Π΄Π»ΠΈΠ½Π° (_ll) Π²Π΅ΡΠ½ΡΡΡ n_screen_lines
Π΄Π»Ρ ΡΡΠ΅Π΅ΠΊ ΠΊΠΎΠ΄Π°, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°; (Π΄Π»ΠΈΠ½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΡΡΠΎΠΊΠ°ΠΌ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ ΡΠΎ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ ΡΡΠ΅Π½ΠΊΠΈ)
ΠΡΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΌ Π°Π½Π°Π»ΠΈΠ·Π΅ Π·Π°ΠΏΠΈΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠΆΠΊΠΈ ΠΌΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΠ΅ΠΉΠΊΡ ΠΏΠΎ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, ΡΠΈΠΊΡΠΈΡΡΡ Π΅Π΅ ΡΠΈΠΏ ΡΡΠ΅ΠΉΠΊΠΈ ΠΈ Π΄Π»ΠΈΠ½Ρ ΡΡΡΠΎΠΊΠΈ ΡΠΊΡΠ°Π½Π°, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Ρ cell_map
Π² Π²ΠΈΠ΄Π΅ ΡΠΏΠΈΡΠΊΠ° ΠΈΠ· (cell_size, cell_type)
ΠΊΠΎΡΡΠ΅ΠΆΠ΅ΠΉ:
ΠΈΠΌΠΏΠΎΡΡ ΠΠ‘ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ nbformat VIS_COLOUR_MAP = {'ΡΡΠ΅Π½ΠΊΠ°':'Π²Π°ΡΠΈΠ»ΡΠΊΠΎΠ²ΡΠΉ','ΠΊΠΎΠ΄':'ΡΠΎΠ·ΠΎΠ²ΡΠΉ'} Π·Π°ΡΠΈΡΠ° _nb_vis_parse_nb (fn): """ΠΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠΉΡΠ΅ Π±Π»ΠΎΠΊΠ½ΠΎΡ ΠΈ ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠΉΡΠ΅ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΠΊΠ°ΡΡΡ ΡΡΠ΅Π΅ΠΊ nb_vis.""" ΡΡΠ΅ΠΉΠΊΠ°_ΠΊΠ°ΡΡΠ° = [] _fn, fn_ext = os.path.splitext(fn) Π΅ΡΠ»ΠΈ Π½Π΅ fn_ext=='.ipynb' ΠΈΠ»ΠΈ Π½Π΅ os.path.isfile(fn): Π²Π΅ΡΠ½ΡΡΡ cell_map Ρ open(fn,'r') ΠΊΠ°ΠΊ f: nb = nbformat.reads(f.read(), as_version=4) Π΄Π»Ρ ΡΡΠ΅ΠΉΠΊΠΈ Π² nb.cells: cell_map.append((_count_screen_lines(cell['source']), VIS_COLOUR_MAP[cell['cell_type']])) Π²Π΅ΡΠ½ΡΡΡ cell_map
Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΠ»ΠΈ ΠΏΡΡΠΈ ΠΊ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°ΠΌ ΠΈ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΊΠ°ΡΡΡ ΡΡΠ΅Π΅ΠΊ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½ΠΎΡΡΠ±ΡΠΊΠ°:
def _dir_walker (ΠΏΡΡΡ, ΠΈΡΠΊΠ»ΡΡΠΈΡΡ = 'ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ'): """ΠΡΠΎΡΠΈΠ»ΠΈΡΡΠΉΡΠ΅ Π²ΡΠ΅ Π±Π»ΠΎΠΊΠ½ΠΎΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΈ Π²ΠΎ Π²ΡΠ΅Ρ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°Ρ .""" Π΅ΡΠ»ΠΈ ΠΈΡΠΊΠ»ΡΡΠΈΡΡ == 'ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ': exclude_paths = ['.ipynb_checkpoints', '.git', '.ipynb', '__MACOSX'] Π΅ΡΠ΅: #ΠΡΠ»ΠΈ ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ ΠΈΡΠΊΠ»ΡΡΠΈΡΡ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΡΠΏΠΈΡΠΎΠΊ exclude_paths = ΠΈΡΠΊΠ»ΡΡΠΈΡΡ nb_multidir_cell_map = {} Π΄Π»Ρ _path, ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ², ΡΠ°ΠΉΠ»ΠΎΠ² Π² os.walk(ΠΏΡΡΡ): #ΠΠ°ΡΠΈΠ½Π°ΠΉ Ρ ΠΎΠ΄ΠΈΡΡ... #ΠΡΠ»ΠΈ ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½... Π΅ΡΠ»ΠΈ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ (exclude_paths).intersection (set (_path.split ('/'))): #ΠΡΠΎΡΠΈΠ»ΠΈΡΡΠΉΡΠ΅ ΡΡΠΎΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³... Π΄Π»Ρ _f Π² ΡΠ°ΠΉΠ»Π°Ρ : fn = os.path.join(_path, _f) cell_map = _nb_vis_parse_nb(fn) Π΅ΡΠ»ΠΈ ΡΡΠ΅ΠΉΠΊΠ°_ΠΊΠ°ΡΡΠ°: nb_multidir_cell_map[fn] = ΠΊΠ°ΡΡΠ°_ΡΡΠ΅ΠΉΠΊΠΈ Π²Π΅ΡΠ½ΡΡΡ nb_multidir_cell_map
Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°Ρ Π²Π°ΡΠ° ΡΠ°ΠΉΠ»Π°(ΠΎΠ²) Π·Π°ΠΏΠΈΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠΆΠΊΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ:
def nb_vis_parse_nb (ΠΏΡΡΡ, img_file = '', ΡΠΈΡΠΈΠ½Π° ΡΡΡΠΎΠΊΠΈ = 5, w = 20, ** kwargs): """ΠΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠΉΡΠ΅ ΠΎΠ΄Π½Ρ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΠΈΡΠ½ΡΡ ΠΊΠ½ΠΈΠΆΠ΅ΠΊ Π½Π° ΠΏΡΡΠΈ.""" Π΅ΡΠ»ΠΈ os.path.isdir(ΠΏΡΡΡ): cell_map = _dir_walker(ΠΏΡΡΡ) Π΅ΡΠ΅: cell_map = _nb_vis_parse_nb (ΠΏΡΡΡ) nb_vis (cell_map, img_file, ΡΠΈΡΠΈΠ½Π° Π»ΠΈΠ½ΠΈΠΈ, w, **kwargs)
ΠΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ?
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠ»ΠΎΡΡΠ΅ΡΠ° ΡΠΎΠ·Π΄Π°Π΅Ρ Π³ΡΠ°ΡΠΈΠΊ ΠΈΠ· ΡΠΎΡΠΎΠ²Π°Ρ_ΠΊΠ°ΡΡΠ°
:
ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ matplotlib.pyplot ΠΊΠ°ΠΊ plt def plotter (cell_map, x, y, label = '', header_gap = 0,2): """ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΉ ΠΊΠ»Π΅ΡΠΎΡΠ½ΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½ΠΎΡΡΠ±ΡΠΊΠ°.""" #ΠΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΡΡ ΠΊ Π±Π»ΠΎΠΊΠ½ΠΎΡΡ plt.text(y, x, ΠΌΠ΅ΡΠΊΠ°) Ρ = Ρ + Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ_Π·Π°Π·ΠΎΡ Π΄Π»Ρ _cell_map Π² cell_map: #ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ²Π΅ΡΠ½ΡΡ ΠΏΠΎΠ»ΠΎΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠ΅ΠΉΠΊΠ°ΠΌΠΈ Π΅ΡΠ»ΠΈ Ρ > 0: Π΅ΡΠ»ΠΈ Π·Π°Π·ΠΎΡ_ΡΠ²Π΅Ρ: plt.plot([y,y+gap],[x,x], gap_color, linewidth=linewidth) Ρ = Ρ + ΡΠ°Π·ΡΡΠ² _y = y + _cell_map[0] + 1 # Π‘Π΄Π΅Π»Π°ΡΡ ΠΊΡΠΎΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ΅ΠΉΠΊΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ plt.plot([y,_y],[x,x], _cell_map[1], ΡΠΈΡΠΈΠ½Π° Π»ΠΈΠ½ΠΈΠΈ=ΡΠΈΡΠΈΠ½Π° Π»ΠΈΠ½ΠΈΠΈ) Ρ = _Ρ
ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΠΊ
ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°ΡΡΡΠΈΡΠ°Π½ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΠΌΠΎΠΉ Π΄Π»ΠΈΠ½Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠΆΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΠΏΡΡΠ°Π΅ΠΌΡΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ, ΡΡΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΡΠ΅Π΄Π΅Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ:
ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΡ Π·Π°ΡΠΈΡΠ° get_gap (cell_map): """ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π·ΠΎΡΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠ±ΡΠ΅ΠΉ Π΄Π»ΠΈΠ½Ρ""" Π·Π°ΡΠΈΡΠ° get_overall_length (cell_map): """ΠΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΡΡ Π΄Π»ΠΈΠ½Ρ ΡΡΡΠΎΠΊΠΈ Π·Π°ΠΏΠΈΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠΆΠΊΠΈ.""" ΠΎΠ±ΡΠ°Ρ_Π΄Π»ΠΈΠ½Π° = 0 ΡΠ°Π·ΡΡΠ² = 0 Π΄Π»Ρ i ,(l,t) Π² ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΈ(cell_map): #i - ΡΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠ΅Π΅ΠΊ, Π΅ΡΠ»ΠΈ ΡΡΠΎ ΡΠΎΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ? ΠΎΠ±ΡΠ°Ρ_Π΄Π»ΠΈΠ½Π° = ΠΎΠ±ΡΠ°Ρ_Π΄Π»ΠΈΠ½Π° + l Π²Π΅ΡΠ½ΡΡΡ total_len max_overall_len = 0 #ΠΡΠ»ΠΈ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π³ΡΠ°ΡΠΈΠΊ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π½ΠΎΡΡΠ±ΡΠΊΠΎΠ², ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΡΡ ΠΎΠ±ΡΡΡ Π΄Π»ΠΈΠ½Ρ Π΅ΡΠ»ΠΈ isinstance (cell_map, dict): Π΄Π»Ρ k Π² cell_map: _overall_len = get_overall_length(cell_map[k]) max_overall_len = _overall_len, Π΅ΡΠ»ΠΈ _overall_len > max_overall_len, ΠΈΠ½Π°ΡΠ΅ max_overall_len Π΅ΡΠ΅: max_overall_len = get_overall_length(cell_map) #Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π·Π°Π·ΠΎΡ ΡΠ°Π²Π½ΡΠΌ 0,5% ΠΎΡ ΠΎΠ±ΡΠ΅ΠΉ Π΄Π»ΠΈΠ½Ρ Π²Π΅ΡΠ½ΡΡΡ math.ceil (max_overall_len * 0,01)
Π€ΡΠ½ΠΊΡΠΈΡ nb_vis()
ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ cell_map
Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊ ΠΊΠ°ΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΠΈ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠΆΠΊΠΈ, Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ ΠΊΠ°ΡΡ ΡΡΠ΅Π΅ΠΊ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π·Π°ΠΏΠΈΡΠ½ΡΡ
ΠΊΠ½ΠΈΠΆΠ΅ΠΊ Ρ ΠΊΠ»ΡΡΠΎΠΌ ΠΏΠΎ ΠΏΡΡΠΈ ΠΊ Π·Π°ΠΏΠΈΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠΆΠΊΠ΅:
def nb_vis (cell_map, img_file = '', ΡΠΈΡΠΈΠ½Π° Π»ΠΈΠ½ΠΈΠΈ = 5, w = 20, Π·Π°Π·ΠΎΡ = Π½Π΅Ρ, gap_boost = 1, gap_colour = 'ΡΠ²Π΅ΡΠ»ΠΎ-ΡΠ΅ΡΡΠΉ'): """ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΡΠ΅Π΅ΠΊ Π½ΠΎΡΡΠ±ΡΠΊΠ°.""" Ρ =0 Ρ=0 #ΠΡΠ»ΠΈ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΎΠ΄Π½Π° cell_map Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠΆΠΊΠΈ Π΅ΡΠ»ΠΈ isinstance (cell_map, ΡΠΏΠΈΡΠΎΠΊ): Π·Π°Π·ΠΎΡ = Π·Π°Π·ΠΎΡ, Π΅ΡΠ»ΠΈ Π·Π°Π·ΠΎΡ Π½Π΅ ΡΠ°Π²Π΅Π½ None, ΠΈΠ½Π°ΡΠ΅ get_gap(cell_map) * gap_boost ΡΠΈΡ, ΡΠΎΠΏΠΎΡ = plt.subplots (figsize = (w, 1)) ΠΏΠ»ΠΎΡΡΠ΅Ρ (cell_map, x, y) #ΠΡΠ»ΠΈ ΠΌΡ ΡΡΡΠΎΠΈΠΌ ΠΊΠ°ΡΡΡ cell_map Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π±Π»ΠΎΠΊΠ½ΠΎΡΠΎΠ² elif isinstance (cell_map, dict): Π·Π°Π·ΠΎΡ = Π·Π°Π·ΠΎΡ, Π΅ΡΠ»ΠΈ Π·Π°Π·ΠΎΡ Π½Π΅ ΡΠ°Π²Π΅Π½ None, ΠΈΠ½Π°ΡΠ΅ get_gap(cell_map) * gap_boost ΡΠΈΡ, ΡΠΎΠΏΠΎΡ = plt.subplots(figsize=(w,len(cell_map))) Π΄Π»Ρ k Π² cell_map: ΠΏΠ»ΠΎΡΡΠ΅Ρ (cell_map [k], x, y, k) Ρ = Ρ + 1 Π΅ΡΠ΅: ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°ΡΡ('Π²ΡΡ') ΡΠΎΠΏΠΎΡ.ΠΎΡΡ('Π²ΡΠΊΠ»') plt.gca().invert_yaxis() Π΅ΡΠ»ΠΈ img_file: plt.savefig(img_file)
Π€ΡΠ½ΠΊΡΠΈΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π³ΡΠ°ΡΠΈΠΊ Π² Π±Π»ΠΎΠΊΠ½ΠΎΡΠ΅ Jupyter ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠ·Π²Π°Π½Π° Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π² ΡΠ°ΠΉΠ».
ΠΡΠΎ Π±ΡΠ»ΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ, ΡΠ°ΠΊ ΡΡΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ.
Π ΡΠΏΠΈΡΠΎΠΊ Π΄Π΅Π» Π²Ρ
ΠΎΠ΄ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ CLI (ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠΈΠΏΡ ΡΠ²Π΅ΡΠΎΠ²). ΠΠ½Π΅ ΡΠ°ΠΊΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΈΠΏΡ ΠΊΠ»Π΅ΡΠΎΠΊ. ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π°Ρ Π»Π΅Π³Π΅Π½Π΄Π°, ΠΎΠ±ΡΡΡΠ½ΡΡΡΠ°Ρ ΡΠ²Π΅ΡΠΎΠ²ΡΡ ΠΊΠ°ΡΡΡ, ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π»Π° Π±Ρ ΡΠΌΡΡΠ».
Π Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½ΠΎΠΌ ΡΠΏΠΈΡΠΊΠ΅ Π΄Π΅Π» Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π²Π½ΡΡΡΠΈ ΡΡΠ΅ΠΉΠΊΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ, Π°Π±Π·Π°ΡΡ ΠΈ Π±Π»ΠΎΠΊΠΈ ΠΊΠΎΠ΄Π° Π² ΡΡΠ΅ΠΉΠΊΠ°Ρ ΡΡΠ΅Π½ΠΊΠΈ; ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π², ΠΏΡΡΡΡΠ΅ ΡΡΡΠΎΠΊΠΈ, ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΠ΄Π°, ΠΌΠ°Π³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ/Π±Π»ΠΎΠΊΠΈ, ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Π² ΡΡΠ΅ΠΉΠΊΠ°Ρ ΠΊΠΎΠ΄Π°.
Π Π±Π»ΠΎΠΊΠ½ΠΎΡΠ°Ρ OU ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ»Π° Π±Ρ ΠΏΠΎΠ»Π΅Π·Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ±Π»Π°ΡΡΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠΎΠ²Π½Ρ Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² Π΄Π»ΠΈΠ½Π½ΡΡ Π·Π°ΠΏΠΈΡΠ½ΡΡ ΠΊΠ½ΠΈΠΆΠΊΠ°Ρ . ΠΠ΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»ΡΠ½ΡΡ Β«ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΡΠΊΡΠ°Π½Π°Β» ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° Π² ΡΡΠΎΠ»Π±ΡΠ΅, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΡΡ Β«ΠΏΡΠΎΠΊΡΡΡΠΊΡΒ» Π²Π½ΠΈΠ·, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΡΠΎΠ»Π±ΡΠ΅.
Π§ΡΠΎ-ΡΠΎ Π΅ΡΠ΅, ΡΡΠΎ Ρ ΠΌΠΎΠ³Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ΅ΡΠ²ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° ΠΎΠ½Π»Π°ΠΉΠ½-Π±Π»ΠΎΠΊΠ½ΠΎΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΈΠ»ΠΈ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Github, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π°ΡΡ Π²Π°ΠΌ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π²ΡΠ΅Ρ
Π±Π»ΠΎΠΊΠ½ΠΎΡΠΎΠ² Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ Π²ΡΡΡΠΎΠΈΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² README ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠ° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ°, Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΡΠΎ-ΡΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎ, Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. Π§ΡΠΎΠ±Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ ΡΠ°Π±ΠΎΡΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ, ΡΠ»ΡΠΆΠ±Π°, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π±ΡΠ΄Π΅Ρ Ρ
ΡΠ°Π½ΠΈΡΡ Ρ
ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠ½ΡΡ
ΠΊΠ½ΠΈΠΆΠ΅ΠΊ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΈ, Π΅ΡΠ»ΠΈ ΡΡΠΎ-ΡΠΎ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ, ΡΠ΅Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠ°Π·, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ. (ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» ΠΊΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ Π±Π»ΠΎΠΊΠ½ΠΎΡΠ°, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° Π²ΡΠ΅Ρ
Π±Π»ΠΎΠΊΠ½ΠΎΡΠΎΠ² Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Π³Π΄Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π±Π»ΠΎΠΊΠ½ΠΎΡ, Π° Π·Π°ΡΠ΅ΠΌ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΡ
Π² ΠΎΠ΄Π½ΠΎ Π²ΡΡ
ΠΎΠ΄Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅?)
PS ΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΡΡΠ°Π²ΠΈΠ»ΠΎ ΠΌΠ΅Π½Ρ Π·Π°Π΄ΡΠΌΠ°ΡΡΡΡ ΠΎ ΠΏΡΠΎΡΡΡΡ
Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ°Ρ
XML-ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ²β¦ Π£ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ ΠΌΠ°ΡΡΡΡΡ OU-XML ΠΊ ipynb (Π° ΡΠ°ΠΊΠΆΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, OU-XML2md2html), Π½ΠΎ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ Π·Π½Π°ΡΠΈΠΌΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ ΠΈΠ· OU- XML Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΠ΅ΡΡΠ½ ΠΏΡΠΈ ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠ° ΠΈ Ρ. Π΄.). ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, Π±ΡΠ»ΠΎ Π±Ρ ΡΠ°Π·ΡΠΌΠ½Π΅Π΅ ΡΠΎΠ·Π΄Π°ΡΡ XSLT Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ²ΠΎΠ΄Π½ΠΎΠ³ΠΎ XML-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°, Π° Π·Π°ΡΠ΅ΠΌ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ? ΠΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Jupytext md Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ΅Π³ΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠΌΠ΅ΡΠΈΡΡ ΡΡΠ΅ΠΉΠΊΠΈ ΡΡΠ΅Π½ΠΊΠΈ ΠΊΠ°ΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈ Ρ.