ΠΡΠ΅Π· ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π·Π°ΠΏΠΎΡΠ½Π°Ρ Π΄Π° ΡΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π²Π°ΠΌ ΠΏΠΎΠ²Π΅ΡΠ΅ Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°. ΠΠ° Π½Π°ΠΏΠΈΡΠ° ΠΎΠ±ΡΡΠ½ΠΈΡΠ΅Π»Π΅Π½ ΡΠ΅ΠΊΡΡ Π·Π° Π½Π°ΡΠΈΠ½Π°, ΠΏΠΎ ΠΊΠΎΠΉΡΠΎ ΡΠ°Π±ΠΎΡΠΈ Π΅Π΄Π½Π° ΠΈΠ»ΠΈ Π΄ΡΡΠ³Π° ΡΠΈΡΡΠ΅ΠΌΠ° β ΠΊΠ°ΡΠΎ ΡΡΠ»ΠΎ, ΡΠΎΠ²Π° Π΅ Π΄ΠΎΡΡΠ° ΠΏΡΠΎΡΡΠΎ. ΠΠ° Π½Π°ΡΠΈΡΡΠ²Π°ΠΌ ΡΡ Π΅ΠΌΠ°, Π½Π° ΠΊΠΎΡΡΠΎ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈ Π²ΡΠΈΡΠΊΠΈ ΠΊΠ»ΡΡΠΎΠ²ΠΈ ΠΎΠ±Π΅ΠΊΡΠΈ ΠΈ Π²ΡΡΠ·ΠΊΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΡ , ΡΡΡΠΎ Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ Π»Π΅ΡΠ½ΠΎ.
ΠΠΎ Π½Π°ΠΉ-ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΠΈΡΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π΅ Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΠΌ ΡΠ°Π·ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π°ΠΊΡΡΠ°Π»Π½Π°. Π Π΄Π° Π½Π΅ Π³ΠΎΠ²ΠΎΡΠΈΠΌ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΠΊΡΡΠ°, Π°ΠΌΠΈ ΠΈ Π·Π° ΡΡ Π΅ΠΌΠΈΡΠ΅β¦ Π’ΡΠΉ ΠΊΠ°ΡΠΎ ΡΡΠ»Π°ΡΠ° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΅ ΠΎΠ½Π»Π°ΠΉΠ½, Ρ.Π΅. Π² html ΡΠΎΡΠΌΠ°Ρ, ΠΊΡΠΌ ΡΠ΅ΠΊΡΡΠ° ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ gif/jpg/png, Π½Π° ΠΊΠΎΠΈΡΠΎ Π²ΡΡΡΠ½ΠΎΡΡ ΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°Π·Π΅Π½ΠΈ ΡΡ Π΅ΠΌΠΈΡΠ΅. Π ΡΡ Π΅ΠΌΠΈΡΠ΅ ΡΠ΅ ΡΠΈΡΡΠ²Π°Ρ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΊΠ°ΡΠΎ Visio ΠΈΠ»ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ ΡΡΠ»ΡΠ³ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π½Π° draw.io. Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° Π΅ΠΊΡΠΏΠΎΡΡΠΈΡΠ°Ρ ΡΡ Π΅ΠΌΠ°ΡΠ° Π² Π³ΡΠ°ΡΠΈΡΠ΅Π½ ΡΠΎΡΠΌΠ°Ρ ΠΈ Ρ ΠΏΡΠΈΠΊΡΠ΅ΠΏΡΡ ΠΊΡΠΌ html. ΠΡΠΈΡΠΊΠΎ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΏΡΠΎΡΡΠΎ.
Π ΡΠ΅ΠΌ Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ?
Π‘Ρ
Π΅ΠΌΠΈΡΠ΅ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ° ΠΏΡΠΎΡΡΠΈ. ΠΠΎ-ΡΠΎΡΠ½ΠΎ, Π½Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΈ. ΠΠ°, Π±ΡΠΎΡΡ Π½Π° ΠΎΠ±Π΅ΠΊΡΠΈΡΠ΅ Π΅ Π΄Π΅ΡΠ΅ΡΠΈΠ½Π° ΠΈΠ»ΠΈ Π΄Π²Π΅, Π±ΡΠΎΡΡ Π½Π° Π²ΡΡΠ·ΠΊΠΈΡΠ΅ Π΅ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ ΡΠΎΠ»ΠΊΠΎΠ²Π°. ΠΠ»ΡΡ Π½Π°Π΄ΠΏΠΈΡΠΈ, Π½ΡΠΊΠ°ΠΊΠ²ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΡΠΎΡΡΠΈ ΡΡ
Π΅ΠΌΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΎΠΏΠΈΡΠ°Ρ ΠΈ Ρ Π΄ΡΠΌΠΈ, Π° ΡΠ²ΡΡΠ΄Π΅ ΡΠ»ΠΎΠΆΠ½ΠΈ, Ρ
ΡΠΌβ¦ (Ρ) 'Π½ΡΠΌΠ° Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ°Ρ-Ρ'. Π‘Ρ
Π΅ΠΌΠΈΡΠ΅ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ, ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΡΡΡ
ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ Π²Π½Π°ΡΡΡ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎ-Π΅ΠΏΠΈΠ·ΠΎΠ΄ΠΈΡΠ½ΠΎ, Ρ.Π΅. ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ΅ ΡΠ»Π΅Π΄Π²Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Π½Π°ΡΠΈΡΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈ.
ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° Π²Π³ΡΠ°ΠΆΠ΄Π°ΡΠ΅ HTML Π½Π° ΡΡΠ»ΡΠ³Π°ΡΠ°. ΠΡΠΎΠ±Π²Π°Ρ ΡΠ΅ Π»ΠΈ?
ΠΠ°, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠ΅Π½ ΠΌΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ²Π°Ρ Π³ΡΠ°ΡΠΈΠΊΠΈΡΠ΅ Π½Π° gliffy.com. ΠΠΎ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΡΠ΅ Π² Π²ΡΠ½ΡΠ½Π° ΡΡΠ»ΡΠ³Π°, Π·Π° Π΄Π° ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°ΡΠ΅. Π Π΅ ΠΏΠΎ-ΡΡΡΠ΄Π½ΠΎ Π΄Π° Π΄Π΅Π»Π΅Π³ΠΈΡΠ°ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΡΠ΅ΠΊΡΠΈΠΈ Π½Π° ΠΊΠΎΠ»Π΅Π³Π°.
ΠΠ°ΠΊΠ²ΠΎ Π΄Π° ΠΏΡΠ°Π²ΠΈΠΌ?
ΠΠ°ΡΠΊΠΎΡΠΎ Π² GitHub ΠΌΠΈ ΠΏΠΎΠΏΠ°Π΄Π½Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ . ΠΠΈΠ°Π³ΡΠ°ΠΌΠ° ΠΊΠ°ΡΠΎ ΠΊΠΎΠ΄. Π’ΠΎΠ΅ΡΡ, ΠΎΠΏΠΈΡΠ²Π°ΠΌΠ΅ ΡΡ Π΅ΠΌΠ°ΡΠ°, ΠΎΡ ΠΊΠΎΡΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΠΌ, Π½Π° JS. Π’ΠΎΠ·ΠΈ JS ΠΏΠΈΡΠ΅ΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² ΡΡΡΠΈΡ HTML, ΠΊΡΠ΄Π΅ΡΠΎ Π΅ ΠΈ Π΄ΡΡΠ³ΠΈΡΡ ΡΠ΅ΠΊΡΡ Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°.
ΠΠ΅ΠΆΠ΄Ρ Π΄ΡΡΠ³ΠΎΡΠΎ, ΠΏΠΈΡΠ° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° Π½Π΅ ΡΡΠ²ΡΠ΅ΠΌ Π² HTML. ΠΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° Π΅ Π½Π°Π±ΠΎΡ ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Ρ markdown ΡΠ΅ΠΊΡΡ, ΠΊΠΎΠΉΡΠΎ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΡΠ΅ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ° Π² Π·Π°Π²ΡΡΡΠ΅Π½ ΡΠ°ΠΉΡ Π·Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π½ΡΠΊΠΎΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ wintersmith. ΠΠ»ΠΈ wiki-ΡΠΈΡΡΠ΅ΠΌΠ°.
Π‘ΡΠ°Π²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ: Π΅ΡΠΎ, Π½Π°ΠΏΠΈΡΠ°Ρ ΠΌΠ΅ ΡΠ΅ΠΊΡΡΠ°, ΡΠ»Π΅Π΄ ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΠΎΡΠ²Π°ΡΡ ΡΠ°Π³ script ΠΈ Π² Π½Π΅Π³ΠΎ Π΅ ΠΎΠΏΠΈΡΠ°Π½ JS ΠΊΠΎΠ΄ΡΡ Π½Π° ΡΡ Π΅ΠΌΠ°ΡΠ°.
ΠΠ°ΠΊΠ²ΠΎ ΠΏΠ°ΠΊ Π½Π΅ Π΅ Π½Π°ΡΠ΅Π΄?
Π’ΠΎΠ·ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΌΠΈ Ρ Π°ΡΠ΅ΡΠ°, Π½ΠΎ Π½Π΅ Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΈΡΡ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π°ΡΠΎ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠ° ΡΠ΅ ΡΠΈΡΡΠ²Π° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ½Π΅. (Π ΠΊΡΠ°Ρ Π½Π° ΡΡΠ°ΡΠΈΡΡΠ° ΡΠ΅ ΠΈΠΌΠ° Π»ΠΈΠ½ΠΊΠΎΠ²Π΅ ΠΊΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΈ ΠΈ ΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π°ΠΌΠ΅ΡΠΈΡ ΠΏΠΎ ΡΠ΅ΠΌΠ°ΡΠ° 'Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠ° ΠΊΠ°ΡΠΎ ΠΊΠΎΠ΄.')
Π Π½Π΅ ΡΡΠΌ ΡΠ°ΠΌ Π² ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°. ΠΠΎΠ½ΡΠΊΠΎΠ³Π° ΠΈ ΠΊΠΎΠ»Π΅Π³ΠΈ Π΄ΠΎΠΏΡΠΈΠ½Π°ΡΡΡ β ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Ρ Π΄ΡΠΌΠΈ, ΠΏΡΠΎΠΌΠ΅Π½ΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ, Π΄ΠΎΠ±Π°Π²ΡΡ Π½ΠΎΠ²ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.Β
ΠΠ°ΡΠΎΠ²Π° Π±ΠΈΡ ΠΈΡΠΊΠ°Π» Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠ°ΡΠ° Π΄Π° Π΅ Π² ΡΠ΅ΡΠΈΠΌ, ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌ ΡΠ΅ΠΊΡΡΠΎΠ² ΡΠΎΡΠΌΠ°Ρ, Π½Π° ΠΊΠΎΠΉΡΠΎ Π½Π΅ Π±ΠΈ ΡΡΡΠ±Π²Π°Π»ΠΎ Π΄Π° ΡΠ΅ ΡΡΠΈΠΌ Π΄ΡΠ»Π³ΠΎ. ΠΠΎΠ½ΡΠΊΠΎΠ³Π° ΠΌΠΎΠΆΠ΅ Π΄ΠΎΡΠΈ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ ΠΏΡΠΎΡΡΠΎ copy-paste Π·Π° Π±ΡΡΠ·ΠΎ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π½ΠΎΠ²Π° ΡΡ Π΅ΠΌΠ°.Β
ΠΡΡΠ³ ΠΊΠΎΠ»Π΅Π³Π° ΡΡΡΠΎ ΠΎΡΠ±Π΅Π»ΡΠ·Π°, ΡΠ΅ ΠΊΠΎΠ΄ΡΡ Π΅, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, ΡΡΠ΄Π΅ΡΠ΅Π½, Π½ΠΎ Π°ΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΡΡΡΡΠΊΡΡΡΠ°, Π²ΡΠΈΡΠΊΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠΎΠ³ΠΎ ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈΡΠ΅Π»Π½ΠΎ.
ΠΠ°ΡΠΎΠ²Π° ΠΎΠΏΠΈΡΠ°Ρ Π΄Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Ρ ΡΡ Π΅ΠΌΠ°ΡΠ° ΠΊΠ°ΡΠΎ Π½Π°Π±ΠΎΡ ΠΎΡ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΌΠ°Π»ΠΊΠΈ ΠΌΠ°ΡΠΈΠ²Π°, ΠΊΠΎΠΈΡΠΎ ΠΎΠΏΠΈΡΠ²Π°Ρ Π²ΡΠ·Π»ΠΈ, Π²ΡΡΠ·ΠΊΠΈ, Π³ΡΡΠΏΠΈ Π²ΡΠ·Π»ΠΈ ΠΈ ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π²ΡΠ·Π»ΠΈΡΠ΅. ΠΡ ΠΌΠΎΠ΅ΡΠΎ ΡΠΊΡΠΎΠΌΠ½ΠΎ ΠΌΠ½Π΅Π½ΠΈΠ΅, ΡΠ΅Π·ΡΠ»ΡΠ°ΡΡΡ Π΅ Π΄ΠΎΡΡΠ° ΡΠ΄ΠΎΠ±Π΅Π½, Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, Π½Π° Π²ΠΊΡΡ ΠΈ ΡΠ²Π΅Ρβ¦
ΠΠ°ΠΊ Π΅ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠ°ΡΠ° Π² ΠΌΠ°ΡΠΈΠ²Π°?
- ΠΡΠ΅ΠΊΠΈ Π²ΡΠ·Π΅Π» ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π° Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΠΊΠΎΠΉΡΠΎ Π½Π΅Π΄Π²ΡΡΠΌΠΈΡΠ»Π΅Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Ρ Π²ΡΠ·Π΅Π»Π°.
- Π‘ΡΡΠΎ ΡΠ°ΠΊΠ°, ΠΊΡΠΌ Π²ΡΠ·Π΅Π»Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈ ΠΈΠΊΠΎΠ½Π°, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π½Π°Π΄ΠΏΠΈΡ.
- ΠΠ΅ΠΆΠ΄Ρ Π΄Π²Π° Π²ΡΠ·Π΅Π»Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠΊΠ°ΠΆΠ΅ Π²ΡΡΠ·ΠΊΠ°.
- ΠΠ° Π²ΡΡΠ·ΠΊΠ°ΡΠ° Π½Π° ΡΡ Π΅ΠΌΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π·Π°Π΄Π°Π΄Π΅ ΡΠ²ΡΡ ΠΈ Π½Π°Π΄ΠΏΠΈΡ.
- ΠΠ°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π²ΡΡΠ·ΠΊΠ°ΡΠ° ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Ρ ΠΎΡ ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊΠ° ΠΊΡΠΌ ΡΠ΅Π»ΡΠ°. Π ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊΡΡ ΠΈ ΡΠ΅Π»ΡΠ° ΡΠ΅ ΡΠΊΠ°Π·Π²Π°Ρ Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈΡΠ΅ Π½Π° Π²ΡΠ·Π»ΠΈΡΠ΅.
- ΠΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ Π΅Π΄ΠΈΠ½ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ·Π»ΠΈ Π² Π³ΡΡΠΏΠ°.
- ΠΡΡΠ·ΠΊΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΠΊΠ°Π·Π°Π½Π° ΠΊΠ°ΠΊΡΠΎ ΠΎΡ Π³ΡΡΠΏΠ°ΡΠ°, ΡΠ°ΠΊΠ° ΠΈ ΠΊΡΠΌ Π³ΡΡΠΏΠ°ΡΠ°.
ΠΠ°ΡΠΎ ΡΠ»Π΅Π΄Π²Π°ΡΠ΅ ΡΠ΅Π·ΠΈ ΠΏΡΠΎΡΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°, ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΡΠ΅ ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΡ Π΅ΠΌΠ°. ΠΠ΅ΡΠ½ΠΎ, Π½Π°Π»ΠΈ? ΠΠ°ΠΏΡΠ»Π½ΠΎ.

Π’Ρ ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π° Ρ ΡΠ»Π΅Π΄Π½ΠΈΡ js ΠΊΠΎΠ΄. ΠΡΠ½ΠΎΠ²Π½ΠΎΡΠΎ ΡΡΠΊ Π΅ ΠΎΠ±Π΅ΠΊΡΡΡ elements. Π Π½Π΅Π³ΠΎ ΡΠ° ΡΠΊΠ°Π·Π°Π½ΠΈ nodes β Π²ΡΠ·Π»ΠΈ, edges β Π²ΡΡΠ·ΠΊΠΈ.
Β
const elements = {
nodes: [ // ΠΎΠΏΠΈΡΠ²Π°ΠΌΠ΅ Π²ΡΠ·Π»ΠΈ
{ id: 'client', type: 'smartphone', label: 'ΠΠΎΠ±ΠΈΠ»Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅'},
{ id: 'server', type: 'server', label: 'ΠΡΠ½ΠΎΠ²Π΅Π½ ΡΡΡΠ²ΡΡ'},
{ id: 'db1', type: 'database', label: 'ΠΠ°Π·Π° Π΄Π°Π½Π½ΠΈ 1'},
{ id: 'db2', type: 'database', label: 'ΠΠ°Π·Π° Π΄Π°Π½Π½ΠΈ 2'},
],
edges: [ // ΡΠΊΠ°Π·Π²Π°ΠΌΠ΅ Π²ΡΡΠ·ΠΊΠΈ
{ source: 'client', target: 'server', label: 'Π·Π°ΡΠ²ΠΊΠ°' },
{ source: 'server', target: 'db1', label: 'Π·Π°ΡΠ²ΠΊΠ°' },
{ source: 'server', target: 'db2', label: 'Π·Π°ΡΠ²ΠΊΠ°' },
],
};
Diagram('scheme1', elements);
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, ΡΠ°ΠΌΠΈΡΡ Π°Π· Π½Π΅ ΠΈΠ·ΠΌΠΈΡΠ»ΠΈΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° ΡΡ Π΅ΠΌΠ°ΡΠ°, Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° β ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠΎΡΠ΅Π½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ. Π§Π°ΡΡΡ ΠΎΡ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ ΡΠ°ΠΌΠΎ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΠΈ.Β
Π―ΡΠ½ΠΎ, ΡΠΎΠ²Π° Π΅ ΠΏΡΠΎΡΡ ΠΏΡΠΈΠΌΠ΅Ρ. ΠΠΎΠΆΠ΅ Π»ΠΈ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΠΎ-ΡΠ»ΠΎΠΆΠ½ΠΎ?
ΠΠ°, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅. ΠΠ° ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΠΈ β ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ positions, Π·Π° ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π° Π³ΡΡΠΏΠΈ β ΡΠΊΠ°Π·Π²Π°ΠΌΠ΅ ΡΠΏΠΈΡΡΠΊ Π½Π° Π³ΡΡΠΏΠΈΡΠ΅ Π² groups, Π° Π·Π° ΡΠ°ΠΌΠΈΡΠ΅ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π°ΡΡΠΈΠ±ΡΡ group.

Π Π΅ΡΠΎ ΠΈ ΠΊΠΎΠ΄Π°:
<div id="scheme5" style="height:500px;width:800px;"></div>
<script>
const elements5 = {
groups: [
{ id: 'g1', label: 'ΠΡΡΠΏΠΏΠ° ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² 1'},
{ id: 'g2', label: 'ΠΡΡΠΏΠΏΠ° ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² 2'},
],
nodes: [
{ id: 'man1', type: 'person', label: 'Π§Π΅Π»ΠΎΠ²Π΅ΠΊ'},
{ id: 'client', type: 'smartphone', label: 'Π‘ΠΌΠ°ΡΡΡΠΎΠ½'},
{ id: 'agent-backend', type: 'server', group: 'g1', label: 'agent-backend'},
{ id: 'web', type: 'server', group: 'g1', label: 'ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ admin'},
{ id: 'www', type: 'server', group: 'g1', label: 'ΡΡΡΠ°Π½ΠΈΡΠ° Π·Π°Π³ΡΡΠ·ΠΊΠΈ'},
{ id: 'mongodb1', type: 'database', group: 'g1', label: 'Mongo DB 1'},
{ id: 'mongodb2', type: 'database', group: 'g1', label: 'Mongo DB 2'},
{ id: 'runner-integration1', type: 'worker', group: 'g1', label: 'ΠΎΡΠΏΡΠ°Π²ΠΊΠ°'},
{ id: 'runner-integration2', type: 'worker', group: 'g1', label: 'ΠΎΡΠΏΡΠ°Π²ΠΊΠ°'},
{ id: 'api', type: 'server', group: 'g1', label: 'API'},
{ id: 'server2', type: 'server', group:'g2', label: 'ΡΠ΅ΡΠ²Π΅Ρ'},
{ id: 'otherServer', type: 'server', group:'g2', label: 'ΡΠ΅ΡΠ²Π΅Ρ'},
{ id: 'firebase', type: 'cloud', label: 'Google Firebase'},
],
edges: [
{ source: 'client', target: 'agent-backend', label: 'json', color: 'red' },
{ source: 'agent-backend', target: 'mongodb1', color: 'red' },
{ source: 'agent-backend', target: 'mongodb2', color: 'red' },
{ source: 'mongodb1', target: 'runner-integration1', label: 'Π΄Π°Π½Π½ΡΠ΅' },
{ source: 'mongodb2', target: 'runner-integration2', label: 'Π΄Π°Π½Π½ΡΠ΅' },
{ source: 'mongodb1', target: 'web', label: 'Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ' },
{ source: 'runner-integration1', target: 'server2', label: 'Π΄Π°Π½Π½ΡΠ΅' },
{ source: 'runner-integration2', target: 'otherServer', label: 'Π΄Π°Π½Π½ΡΠ΅' },
{ source: 'api', target: 'firebase', label: 'Π·Π°ΠΏΡΠΎΡΡ', color: 'blue', },
{ source: 'firebase', target: 'client', label: 'push', color: 'blue'},
{ source: 'server2', target: 'api', label: 'ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ', color: 'blue'},
{ source: 'man1', target: 'client', },
],
positions: [
{ id: 'client', row: 2, col: 1,},
{ id: 'agent-backend', row: 2, col: 3,},
{ id: 'web', row: 6, col: 3,},
{ id: 'www', row: 1, col: 3,},
{ id: 'mongodb1', row: 1, col: 4,},
{ id: 'mongodb2', row: 2, col: 5,},
{ id: 'runner-integration1', row: 3, col: 3,},
{ id: 'runner-integration2', row: 4, col: 3,},
{ id: 'api', row: 5, col: 3,},
{ id: 'server2', row: 6, col: 7,},
{ id: 'otherServer', row: 4, col: 7,},
{ id: 'firebase', row: 5, col: 1,},
{ id: 'logger', row: 2, col: 7,},
{ id: 'crm', row: 5, col: 8,},
],
};
Diagram('scheme5', elements5, {layout: 'grid'});
</script>
Π’Π°Π·ΠΈ ΡΡ Π΅ΠΌΠ° ΠΎΡ Π΅Π΄Π½Π° ΡΡΡΠ°Π½Π° Π΅ ΠΏΠΎΡΡΠΈ Π΄Π²ΠΎΠΉΠΊΠ° Π΅ΠΊΡΠ°Π½ΠΈ Ρ ΠΊΠΎΠ΄ Π½Π° Π»Π°ΠΏΡΠΎΠΏ, ΠΎΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π° ΡΡΡΡΠΊΡΡΡΠ°, ΠΏΠΎΠ΄ΠΎΠ±Π½Π° Π½Π° json, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π±ΡΡΠ·ΠΎ Π·Π°ΠΏΡΠ»Π²Π°Π½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π΄Π°Π½Π½ΠΈ ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠΈ copy-paste.
ΠΠ°ΡΠΎ positions ΡΠ° ΠΎΡΠ΄Π΅Π»Π΅Π½ΠΈ ΠΎΡ Π²ΡΠ·Π»ΠΈΡΠ΅?
Π’Π°ΠΊΠ° Π΅ ΠΏΠΎ-ΡΠ΄ΠΎΠ±Π½ΠΎ. ΠΡΡΠ²ΠΎ ΠΏΠΎΡΠΎΡΠ²Π°ΠΌΠ΅ nodes. Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΠΎΡΠΎΡΠΈΠΌ Π΄Π²Π΅-ΡΡΠΈ Π³ΡΡΠΏΠΈ ΠΈ Π΄Π° Π³ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ Π² Π²ΡΠ·Π»ΠΈΡΠ΅. Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π²Π°ΠΌΠ΅ Π²ΡΡΠ·ΠΊΠΈΡΠ΅. Π ΡΠ°ΠΊ ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΎΠ±Π΅ΠΊΡΠΈ ΠΈ Π²ΡΡΠ·ΠΊΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΡ ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ, ΡΠ΅ Π·Π°Π΅ΠΌΠ°ΠΌΠ΅ Ρ ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΅Π·ΠΈ ΠΎΠ±Π΅ΠΊΡΠΈ Π½Π° ΡΡ Π΅ΠΌΠ°ΡΠ°. ΠΠ»ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΡΠΎ.
ΠΠΎΠΆΠ΅ Π»ΠΈ ΠΈ Π±Π΅Π· positions?
ΠΠΎΠΆΠ΅ ΠΈ Π±Π΅Π· positions. ΠΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΌΠ°Π»ΠΊΠΎ ΡΡΠ΅Π³Π½Π°ΡΠΎ, Π² ΠΏΡΠΈΠΌΠ΅ΡΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π²ΠΈΠ΄ΠΈ ΡΠ°ΠΊΡΠ² Π²Π°ΡΠΈΠ°Π½Ρ. Π’ΠΎΠ²Π° ΡΠ΅ Π΄ΡΠ»ΠΆΠΈ Π½Π° ΡΠ°ΠΊΡΠ°, ΡΠ΅ Π·Π° cytoscape ΠΈΠΌΠ° Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π²ΡΠ·Π»ΠΈΡΠ΅. , ΠΊΠΎΠΉΡΠΎ ΡΡΡΠΎ ΠΎΡΡΠΈΡΠ° Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π³ΡΡΠΏΠΈ. Π£ΠΊΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° positions ΠΏΡΠ°Π²ΠΈ ΡΡ Π΅ΠΌΠ°ΡΠ° ΠΏΠΎ-ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠ°, Π½ΠΎ Π½Π° Π΅ΡΠ°ΠΏΠ° Π½Π° ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΈΡ ΡΠ΅ΡΡΠ΅ΠΆ Π½Π° ΡΡ Π΅ΠΌΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ ΠΈ Π±Π΅Π· positions.
Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° positions ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΡΠΊΠ°Π·Π²Π°Ρ Π² ΡΡΠΈΠ» ΠΠΎΡΡΠΊΠΈ Π±ΠΎΠΉ. Π’.Π΅. Π΅Π΄ΠΈΠ½ Π²ΡΠ·Π΅Π» ΡΠ΅ ΡΠ°Π·ΠΏΠΎΠ»Π°Π³Π° Π² a1, Π° Π΄ΡΡΠ³ Π² d5. ΠΡΠΎΠ±Π΅Π½ΠΎ ΠΏΠΎΠΌΠ°Π³Π°, ΡΠ΅ cytoscape ΡΠΎΡΠΌΠΈΡΠ° ΠΎΠ±Π΅ΠΊΡΠΈΡΠ΅ Π½Π° canvas ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΈ, Ρ.Π΅. ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³ΠΈ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠΈΠΌ, Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠΈ Π½Π° ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π° ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π΄Π° ΡΠΈΠΊΡΠΈΡΠ°ΠΌΠ΅ Π² ΠΊΠΎΠ΄Π° ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π½ΠΈΡΡ ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅.
Π ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΡΠ½ΠΎ. ΠΠΎΠΆΠ΅ΠΌ ΠΎΠΏΠΈΡΠ°ΡΠΈ?
Β
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, Π·Π° Π±ΡΡΠ·ΠΎ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΡ
Π΅ΠΌΠΈ ΡΠΈ Π½Π°ΠΏΡΠ°Π²ΠΈΡ
ΠΌΠ°Π»ΡΠΊ , ΠΊΠΎΠΉΡΠΎ ΡΠ°ΠΌ ΠΎΠ±Π½ΠΎΠ²ΡΠ²Π° ΡΡ
Π΅ΠΌΠ°ΡΠ° ΠΈ Ρ ΡΡΡ
ΡΠ°Π½ΡΠ²Π° Π² Π±ΡΠ°ΡΠ·ΡΡΠ° (Π² localStorage).
ΠΠΏΠΈΡΠ°Ρ ΡΠ΅ Π»ΠΈ? Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Ρ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΈ Π½Π° Π²Π°ΡΠ°ΡΠ° ΡΡΡΠ°Π½ΠΈΡΠ°.
Π’ΠΎΠ³Π°Π²Π° ΠΎΡΠ΅ Π²Π΅Π΄Π½ΡΠΆ:
1. Π‘Π²ΡΡΠ·Π²Π°ΠΌΠ΅ ΡΠΊΡΠΈΠΏΡΠ°
<script src="https://unpkg.com/@antirek/network-diagram@0.1.4/dist/code-full.min.js"></script>
2. ΠΠΎΠ±Π°Π²ΡΠΌΠ΅ Π² html ΠΊΠΎΠ΄Π°
<div id="scheme1" style="height:300px;width:800px;"></div>
<script>
const elements = {
nodes: [
{ id: 'client', type: 'smartphone', label: 'Mobile App'},
{ id: 'server', type: 'server', label: 'Main Server'},
{ id: 'db1', type: 'database', label: 'DB 1'},
{ id: 'db2', type: 'database', label: 'DB 2'},
],
edges: [
{ source: 'client', target: 'server', label: 'request' },
{ source: 'server', target: 'db1', label: 'request' },
{ source: 'server', target: 'db2', label: 'request' },
],
};
Diagram('scheme1', elements);
</script>
3. ΠΏΡΠ°Π²ΠΈΠΌ ΠΊΠΎΠ΄Π° Π΄ΠΎ Π½ΡΠΆΠ½ΠΎΡΠΎ Π½ΠΈ ΡΡ Π΅ΠΌΠΈ (ΠΌΠΈΡΠ»Ρ, ΡΠ΅ Π΅ ΠΏΠΎ-ΠΏΡΠΎΡΡΠΎ ΠΎΡ ΡΠΎΠ²Π° Π΄Π° Π½Π°ΡΠΈΡΡΠ²Π°ΠΌΠ΅ ΡΠΎΠ²Π° π
ΠΡΠ΅ ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π½Π° Π² GitHub.
ΠΠ°ΠΊΠ²ΠΎ Π² ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ°?
ΠΠΎΡΡΠΈΠ³Π½Π°Ρ ΡΠ΅Π»ΠΈΡΠ΅ ΡΠΈ β Π΄Π° Π½Π°ΠΏΡΠ°Π²Ρ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ΡΠΎ Π½Π° ΡΡ Π΅ΠΌΠΈ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° ΠΈΠ½Π»Π°ΠΉΠ½, ΡΠΎΡΠΌΠ°ΡΡΡ Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΠΏΡΠΎΡΡ ΠΈ ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌ. ΠΠ΅ Π±ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠΆΠ΄Π°Π» Π·Π° ΡΡΠΏΠ΅ΡΡΡ Π΅ΠΌΠΈ, Π½ΠΎ Π·Π° ΠΌΠ°Π»ΠΊΠΈ ΡΡ Π΅ΠΌΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΎΠ±ΡΡΠ½ΡΠ²Π°Ρ ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° Π²ΡΡΠ·ΠΊΠΈΡΠ΅ β Π΅ Π΄ΠΎΡΡΠ° Π΄ΠΎΠ±ΡΠΎ. ΠΠΈΠ½Π°Π³ΠΈ ΠΌΠΎΠΆΠ΅ Π±ΡΡΠ·ΠΎ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ° ΠΈ Π½Π΅ΡΠΎ Ρ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ. ΠΠ°, ΠΈ ΠΊΠΎΠ»Π΅Π³ΠΈΡΠ΅ ΠΌΠΎΠ³Π°Ρ ΡΠ°ΠΌΠΈ Π΄Π° ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Ρ Π½Π΅ΡΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°, ΠΏΠΎΠ½Π΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈΡΠ΅ ΠΏΠΎΠ΄ ΠΎΠ±Π΅ΠΊΡΠΈΡΠ΅ Π±Π΅Π· ΠΎΡΠΎΠ±Π΅Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅))
ΠΠ°ΠΊΠ²ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈ?
ΠΠΌΠ°, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠΈ. ΠΠ° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΈΠΊΠΎΠ½ΠΊΠΈ (Π²ΡΠΈΡΠΊΠΈ Π½Π°Π»ΠΈΡΠ½ΠΈ ΡΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΈΠ½Π»Π°ΠΉΠ½ Π² ΡΠΊΡΠΈΠΏΡΠ°). ΠΠ° ΠΏΠΎΠ΄Π±Π΅ΡΠ΅ΠΌ ΠΏΠΎ-ΠΈΠ·ΡΠ°Π·ΠΈΡΠ΅Π»Π΅Π½ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΈΠΊΠΎΠ½ΠΊΠΈ. ΠΠ° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΡΠΈΠ»Π° Π½Π° Π»ΠΈΠ½ΠΈΠΈΡΠ΅ Π½Π° Π²ΡΡΠ·ΠΊΠΈΡΠ΅. ΠΠ° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠΎΠ½ΠΎΠ²ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅.
Π ΠΊΠ°ΠΊΠ²ΠΎ ΠΌΠΈΡΠ»ΠΈΡΠ΅ Π²ΠΈΠ΅?
Β
ΠΠ΅ΡΠ΅ ΠΈΠΌΠ°ΠΌ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΈΠ΄Π΅ΠΈ Π·Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π² issues, Π΄ΠΎΠ±Π°Π²Π΅ΡΠ΅ Π²Π°ΡΠΈΡΠ΅ Π² ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅.
ΠΠΎΠ΅ΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠΈΠΌΠΎ Π² ΡΠ΅ΡΠ΅Π½ ΡΠΏΠ΅ΠΊΡΡΡ ΠΎΡ Π·Π°Π΄Π°ΡΠΈ, ΠΈ ΠΌΠΎΠΆΠ΅ Π±ΠΈ ΡΠ΅ Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ ΠΏΠΎ-ΡΠ΄ΠΎΠ±Π΅Π½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΈ, ΠΏΡΠΎΡΡΠΎ ΠΊΠ°ΡΠΎ Π³ΠΈ ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ β ΠΊΠ°ΠΊΡΠΎ ΡΠ΅ ΠΊΠ°Π·Π²Π° βΠΏΠΎΠΊΠ°ΠΆΠ΅ΡΠ΅ ΠΌΠΈ Π΄ΠΈagrama ΡΠΈ ΠΊΠ°ΡΠΎ ΠΊΠΎΠ΄β
- Β (9 ΡΠΈΠΏΠ° Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ)
- Π Π°ΠΊΠΎ ΠΎΠ±ΠΈΡΠ°ΡΠ΅ ΡΡΠΏΠ΅Ρ Π΄Π΅ΡΠ°ΠΉΠ»Π½ΠΈ ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΈ ΡΡ Π΅ΠΌΠΈ β ΡΠΎΠ·ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΡΠ΅ Π²ΠΈ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΠΈ:
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
