Π‘Π»ΠΎΠΊ схСма сайта: Flowchart Maker & Online Diagram Software – Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° сайта: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° структуры Π² Π²ΠΈΠ΄Π΅ схСмы, Ρ‚ΠΈΠΏΡ‹ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

6 сСрвисов для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π»ΠΎΠΊ-схСмами

Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΈ быстрСС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ схСмы, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹. Π’ нашСй ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΊΠ΅ 6 сСрвисов для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌΠΈ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ процСсс объяснСния ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊ-схСмы. Π‘Π»ΠΎΠΊ-схСма – ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚ΠΈΠΏΠΎΠ² схСм, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈΠ»ΠΈ процСссы. Они часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со слоТными Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ, состоящими ΠΈΠ· мноТСства ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ². ΠœΡ‹ сдСлали ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΊΡƒ ΠΈΠ· 6 инструмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ схСмы. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ… ΠΎΠΏΠ»Π°Ρ‚Π° Π½Π΅ потрСбуСтся.

Π­Ρ‚ΠΎΡ‚ сСрвис ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±Π»ΠΎΠΊ-схСмы, Π½ΠΎ ΠΈ UML, Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ-связь, сСтСвыС Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, элСктричСскиС схСмы, каркасныС схСмы ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ. Π˜Π½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ интСрфСйс ΠΈ большая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° элСмСнтов позволят Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ ΠΈ ΠΊΠΎΠΌΡ„ΠΎΡ€Ρ‚Π½ΠΎ. Π’Π°ΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ сразу нСсколько Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°Ρ… PNG/JPG/XML/SVG/PDF. Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ интСграция с Google Drive.

Gliffy прСдоставляСт схоТий Π½Π°Π±ΠΎΡ€ инструмСнтов ΠΈ возмоТностСй: большая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° элСмСнтов, ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ интСрфСйс, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹, интСграция с Google Drive, Ρ€Π°Π±ΠΎΡ‚Π° с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ Visio, Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹ для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈΠΌΠ΅Π΅Ρ‚ простой ΠΈ понятный UI, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅. Π’Π°ΠΊΠΆΠ΅, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ссылки, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ нСсколько ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π² ΠΎΠ΄ΠΈΠ½.

Онлайн-сСрвис, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ созданиС скСтчСй ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ. БовмСстим с G Suite ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ Microsoft Visio. ПослС окончания Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°Ρ…, Π»ΠΈΠ±ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π½Π° ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΌΠΎΠΊΠ°ΠΏΡ‹, Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ схСмы. Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ ΠΎΠ±ΡˆΠΈΡ€Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° элСмСнтов, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ любой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ установки Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ ΠΏΠ»Π°Ρ‚Π½ΠΎΠ΅, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ±Π½Ρ‹ΠΌ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΎΠΌ web-вСрсии.

ВсСм извСстный сСрвис ΠΎΡ‚ Google. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΠ½Π»Π°ΠΉΠ½ ΠΈ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΊΡ€ΠΎΠΌΠ΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΈ доступа Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚. ВсС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π½Π° сСрвСрС ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ ΠΏΡ€ΠΈ нСобходимости ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ экспортированы Π² Ρ„Π°ΠΉΠ».

Π’Π°ΠΊΠΆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ:

Π‘ΠΎΠ»Π΅Π΅ 100 ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… сСрвисов для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° всС случаи ΠΆΠΈΠ·Π½ΠΈ
67 инструмСнтов для Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π½Π° всС случаи ΠΆΠΈΠ·Π½ΠΈ

Наш ΠΎΠΏΡ‹Ρ‚ создания Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Π±Π»ΠΎΠΊ-схСм для Π²Π΅Π± прилоТСния / Voximplant corporate blog / Habr


К любой ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, которая занимаСтся инструмСнтами для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ дСлСгация ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ². Π‘ΠΎ словами «программистов Π½Π΅Ρ‚, Π·Π°Π΄Π°Ρ‡ΠΈ простыС, Π½ΡƒΠΆΠ΅Π½ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Β». Автоматикой Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½Ρ‹Ρ… ΠΈ Π²ΠΈΠ΄Π΅ΠΎΠ·Π²ΠΎΠ½ΠΊΠΎΠ² ΠΌΡ‹ занимаСмся ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚, ΠΊΠΎΠΌΡƒ ΠΈ Π·Π°Ρ‡Π΅ΠΌ Π·Π²ΠΎΠ½ΠΈΡ‚ Ρ€ΠΎΠ±ΠΎΡ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΎ сСбС прСдставляСм, VueJS любим, Π³ΠΎΠ»ΠΎΠ²Π° Π½Π΅ Π±ΠΎΠ»ΠΈΡ‚. ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ Π½Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ? Под ΠΊΠ°Ρ‚ΠΎΠΌ β€” Π·Π°ΠΊΡƒΠ»ΠΈΡΡŒΠ΅ ΠΈ тСхничСская сторона Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³ красиво Π½Π°Π·Π²Π°Π» Β«SmartcallsΒ».

ΠŸΡ€ΠΈΠ·Π½Π°ΠΊΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Π±Π»ΠΎΠΊ-схСм


Как выглядит Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ? Π­Ρ‚ΠΎ ΠΏΠ°Π»ΠΈΡ‚Ρ€Π° элСмСнтов, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡ… ΠΏΠ΅Ρ€Π΅Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ Π½Π° холст ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ стрСлочками. Π’ Ρ†Π΅Π»ΠΎΠΌ Π½ΠΈΡ‡Π΅Π³ΠΎ слоТного ΠΈ Π² ΠΌΠΈΡ€Π΅ Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄Π° Π΅ΡΡ‚ΡŒ дСсятки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ. БлоТности Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚, ΠΊΠΎΠ³Π΄Π° Π½Π° холстС скапливаСтся нСсколько элСмСнтов, ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΈΡ… Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒ, освобоТдая мСсто. ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ β€” Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ этом происходит со стрСлками. Π‘Π°ΠΌΡ‹ΠΉ простой сцСнарий ΠΈΠ· Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ, Β«ΠΏΠΎΠ·Π²ΠΎΠ½ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ скидку, Π²Ρ‹ΡΠ»ΡƒΡˆΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ скаТСт» ΠΊΠ°ΠΊ Π±Ρ‹ Π½Π°ΠΌΠ΅ΠΊΠ°Π΅Ρ‚ Π½Π°ΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊΠΎΠ² ΠΈ стрСлочСк Π±ΡƒΠ΄Π΅Ρ‚
ΠΌΠ½ΠΎΠ³ΠΎ
:

И ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°Ρ‡Π°Π» эти ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊΠΈ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒ, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±Ρ‹Π» ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ, Π° Π½Π΅ Β«Π²Π·Ρ€Ρ‹Π² стрСлок Π½Π° ΠΌΠ°ΠΊΠ°Ρ€ΠΎΠ½Π½ΠΎΠΉ Ρ„Π°Π±Ρ€ΠΈΠΊΠ΅Β». Π’ΠΎΡ‚ Ρ‚Π°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ΠŸΠ΅Ρ€Π²Ρ‹Π΅ экспСримСнты


Π’ΠΎ Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄Π΅ сСйчас ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΈ бСсплатных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ для рисования Π±Π»ΠΎΠΊ-схСм. Π’Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ осмотрСв ΠΊΡ‚ΠΎ Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚, ΠΌΡ‹ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»ΠΈΡΡŒ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ с красивым Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ «Storm» ΠΈ Π΅Π³ΠΎ части «React Diagrams». Π¨Ρ‚ΡƒΠΊΠ° популярная, развиваСтся Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ, всС красиво выглядит Β«ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈΒ» ΠΈ ΡˆΡƒΡΡ‚Ρ€ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. React, ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅, Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ Π΄Ρ€ΡƒΠΆΠΈΡ‚ с VueJS.

ВсС Π±Ρ‹Π»ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° ΠΌΡ‹ Π½Π΅ собрали ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π΄Π΅ΠΌΠΎ ΠΈ Π½Π΅ стали ΠΏΠ΅Ρ€Π΅Ρ‚Π°ΡΠΊΠΈΠ²Π°Ρ‚ΡŒ связанныС стрСлочками ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊΠΈ. Оказалось, Ρ‡Ρ‚ΠΎ автоматичСски ΠΈ красиво ΠΎΠ³ΠΈΠ±Π°Ρ‚ΡŒ стрСлочками ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊΠΈ Storm Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚. НС Ρ‚ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ совсСм Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ β€” ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ Β«Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈΠ·Π³ΠΈΠ±Π°Β» ΠΈ ΠΎΠ±ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ всС самим. А Ссли Π½Π΅ ΠΎΠ±ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‚ΠΎ Π»ΠΈΠ½ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ΄Ρ‚ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Ρ‹ «насквозь» ΠΈ схСма Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° ΠΊΠ°Ρ€Π°ΠΊΡƒΠ»ΠΈ Π΄Π²ΡƒΡ…Π»Π΅Ρ‚Π½Π΅Π³ΠΎ Ρ€Π΅Π±Π΅Π½ΠΊΠ°. НС Π»ΡƒΡ‡ΡˆΠ΅Π΅ интСрфСйсноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для ΡˆΡ‚ΡƒΠΊΠΈ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ люди ΠΈΠ· бизнСса Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² для подтвСрТдСния Π·Π°ΠΊΠ°Π·ΠΎΠ², доставки, опросов ΠΈ ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΡ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ.

Π’Ρ‹Π±ΠΎΡ€ JointJS


Поняв Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ, ΠΌΡ‹ Π΅Ρ‰Π΅ Ρ€Π°Π· пСрСсмотрСли список ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚ΠΎΠ² ΠΈ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΆΠ΅Ρ€Ρ‚Π²Ρƒ бСсчСловСчных экспСримСнтов: Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ JointJS, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Amazon ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΌΡ‹ Π΅Π΅ сразу Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ? jQuery, Backbone ΠΈ SVG. НС самый соврСмСнный стСк Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ с рядом Π²Ρ€ΠΎΠΆΠ΄Π΅Π½Π½Ρ‹Ρ… нСдостатков.

А Π²ΠΎΡ‚ с автоматичСским Ρ€Π°ΡƒΡ‚ΠΈΠ½Π³ΠΎΠΌ связСй Ρƒ Π½ΠΈΡ… всС Ρ…ΠΎΡ€ΠΎΡˆΠΎ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ссли Π½Π°Π±Ρ€ΠΎΡΠ°Ρ‚ΡŒ Π½Π° холст ΠΌΠ½ΠΎΠ³ΠΎ элСмСнтов ΠΈ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΊΡ€Π΅Π°Ρ‚ΠΈΠ²Π½ΠΎ ΠΈΡ… Ρ€Π°ΡΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ, Ρ‚ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠΊΠ° Π½Π΅ справляСтся (ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° smartcalls.io), Π½ΠΎ для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° практичСских ситуаций Π»ΠΈΠ½ΠΈΠΈ Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ, ΠΎΠ³ΠΈΠ±Π°ΡŽΡ‚ элСмСнты ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΡƒΡŽΡΡ схСму ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· Ρ‚Ρ€ΡƒΠ΄Π° ΠΎΠΊΠΈΠ½ΡƒΡ‚ΡŒ взглядом ΠΈ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠΊΠ° ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠΏΠΎΠ·Π²ΠΎΠ½ΠΈΡ‚ΡŒΒ».

Π‘ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΈ слабыС стороны Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ


НачнСм с jQuery. Как ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π½Π° Π±Π°Π·Π΅ этой ΡˆΡ‚ΡƒΠΊΠΈ, JointJS Π»ΡŽΠ±ΠΈΡ‚ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ Π² Π½Π΅ΠΉ ряд ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ соврСмСнноС VueJS-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с JointJS, Π½Π°ΠΌ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΏΠΎΠΊΠΎΠΏΠ°Ρ‚ΡŒΡΡ Π² Webpack ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ сборку. Если ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π² вашСй ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΡƒΠΌΠ΅Π΅Ρ‚ Π² Webpack (ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈ), Ρ‚ΠΎ это Π½Π΅ составит Π²Π°ΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. А Π²ΠΎΡ‚ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΉ инструкции Ρ‡Ρ‚ΠΎΠ±Ρ‹ Β«Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈΒ» ΠΌΡ‹ Π½Π΅ нашли β€” Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, напишСм Π½Π° Π₯Π°Π±Ρ€Π΅ нСбольшой Ρ‚ΡŽΡ‚ΠΎΡ€ΠΈΠ°Π», Ссли Π±ΡƒΠ΄Π΅Ρ‚ интСрСс.

Π’ JointJS Π½Π΅Π»Π΅Π³ΠΊΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ β€” это ΠΏΠ»Π°Ρ‚Π° Π·Π° простоту ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности ΠΏΠΎ настройкС внСшнСго Π²ΠΈΠ΄Π° ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π±Π»ΠΎΠΊΠΎΠ². Но ΠΌΡ‹-Ρ‚ΠΎ со своим пятилСтним ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½ΠΎΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠΊΠΈ

Ρ‚ΠΎΡ‡Π½ΠΎ Π·Π½Π°Π»ΠΈ, с ΠΊΠ°ΠΊΠΈΠΌΠΈ сущностями ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ наши ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹. Они ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ Π·Π° ΠΊΠΎΠ½ΡΡƒΠ»ΡŒΡ‚Π°Ρ†ΠΈΡΠΌΠΈ, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π°ΠΌ сдСланныС Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°Ρ… схСмы, ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΏΠΎΠΌΠΎΠ³Π°Π΅ΠΌ ΠΈΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ сцСнарии. И Π² этих схСмах Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΎΡ‚Ρ€Π°Π·ΠΈΡ‚ΡŒ Π² нашСм Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅: Ρ€Π°Π±ΠΎΡ‚Π° с условиями, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ, внСшними сСрвисами, голосовыми мСню. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ элСмСнты ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌΠΈ, ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΌΡ‹ ΠΈΡ… Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ довольно Π³Π»ΡƒΠ±ΠΎΠΊΠΎ Π·Π°Π»Π΅Π·Ρ‚ΡŒ Π² кишки JointJS.

Ну ΠΈ Π² Ρ†Π΅Π»ΠΎΠΌ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½Π΅ отличаСтся простотой. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΊΠ°ΠΊΠΈΠ΅ настройки ΠΈ ΠΊΠ°ΠΊ ΠΌΠ΅Π½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π° Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ β€” потрСбуСтся врСмя. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ β€” это Π½Π΅ самая простая ΡˆΡ‚ΡƒΠΊΠ°, ΠΈ ΠΈΠ½Π²Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ врСмя Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, которая Ρ€Π΅ΡˆΠΈΡ‚ Π·Π° нас слоТныС Π·Π°Π΄Π°Ρ‡ΠΈ, это Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ идСя.

НастроСнная JointJS ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ выполняСт свою Ρ€Π°Π±ΠΎΡ‚Ρƒ: быстрый Π΄Π²ΠΈΠΆΠΎΠΊ SVG, автоматичСский Ρ€Π°ΡƒΡ‚ΠΈΠ½Π³ связСй, ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с большим количСством Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ². ΠŸΡ€ΠΈ этом трудности добавлСния собствСнных элСмСнтов с Π»ΠΈΡ…Π²ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ΅Π½ΡΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΡˆΠΈΡ€ΠΎΡ‡Π°ΠΉΡˆΠΈΠΌΠΈ возмоТностями ΠΏΠΎ настройкС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ…. ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ всС: Ρ†Π²Π΅Ρ‚, Ρ„ΠΎΡ€ΠΌΡƒ, ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Ρ€Π°Π·Π½Ρ‹Ρ… ситуациях. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ΡΡ интСрфСйсы, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈ приятно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Π˜Π½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Π°Ρ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Π½Π° CSS ΠΈ HTML / Habr

:hover

Π’ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Ρ€Π°Π· просматривая ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… подсказок, наткнулся Π½Π° Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ пост.
НичСго свСрхслоТного ΠΈ свСрхсСкрСтного Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π΅ Π±Ρ‹Π»ΠΎ, Π½ΠΎ ΠΎΠ½Π° ΠΌΠ½Π΅ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ своСй простотой ΠΈ отсутствиСм javascript’a.
Обмозговав Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, Ρ€Π΅ΡˆΠΈΠ» Ρ‡Ρ‚ΠΎ Π½Π° самой подсказкС Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ подсказки, Π½Π° подсказках Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ подсказки 3Π΅Π³ΠΎ уровня ΠΈ Ρ‚.Π΄. МоТно ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ Π±Π»ΠΎΠΊ-схСму!


РСализация

Взяв Π·Π° основу Π±Π»ΠΎΠΊ-схСму для ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ (ΠΏΡ€ΠΎΡˆΡƒ прощСния, Π³Π΄Π΅ попалась ΠΌΠ½Π΅ эта ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°, я ΡƒΠΆΠ΅ Π½Π΅ помню):

Ρ€Π΅ΡˆΠΈΠ» ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ‚Ρ€ΡƒΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΠΎ этой ссылкС.
Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ лСнь ΠΊΠ»ΠΈΠΊΠ°Ρ‚ΡŒ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ ΠΊΠΎΠ΄Π΅

HTML

Бтруктурная Π΅Π΄ΠΈΠ½ΠΈΡ†Π° прСдставляСт собою span с тСкстом Π²Π½ΡƒΡ‚Ρ€ΠΈ. Π’Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π΄Π²Π° Π±Π»ΠΎΠΊΠ° a послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΠΎΠ²Ρ‹ΠΉ span, ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, новая структурная Π΅Π΄ΠΈΠ½ΠΈΡ†Π°.

CSS

БобствСнно сам Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ:

Π’ зависимости ΠΎΡ‚ полоТСния курсора, Ρ‚ΠΎΡ‚ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ Π±Π»ΠΎΠΊ Π²ΡΡ‚Π°ΡŽΡ‚ ΠΏΠΎΠ΄ Π±Π»ΠΎΠΊΠΎΠΌ, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ находится курсор.
Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π― Π½Π΅ ΠΏΡ€Π΅Ρ‚Π΅Π½Π΄ΡƒΡŽ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠΈ Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² своСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, Π½ΠΎ Π΄ΡƒΠΌΠ°ΡŽ Ρ‡Ρ‚ΠΎ сиС нСбольшоС Ρ‚Π²ΠΎΡ€Π΅Π½ΠΈΠ΅ Π½Π°Ρ‚ΠΎΠ»ΠΊΠ½Π΅Ρ‚ ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π½Π° Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ экстравагантныС ΠΈΠ΄Π΅ΠΈ.

Π•Ρ‰Π΅ Ρ€Π°Π· моя Π±Π»ΠΎΠΊ-схСма
О Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… подсказках Π½Π° CSS

ΠŸΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ построСниС Π±Π»ΠΎΠΊ-схСм для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ / Sandbox / Habr

ЗдравствуйтС, Ρ…Π°Π±Ρ€Π°Π»ΡŽΠ΄ΠΈ! БСгодня Ρ€Π΅Ρ‡ΡŒ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ ΠΎ построСнии Π±Π»ΠΎΠΊ-схСм для Π²Π°ΡˆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ yEd ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ здСсь .
ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅

НС ΡΠΏΠ΅ΡˆΠΈΡ‚Π΅ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅ΠΌ ΠΌΠ°Π»Π΅Π½ΡŒΠΊΡƒΡŽ Π»Π΅ΠΊΡ†ΠΈΡŽ ΠΏΠΎ этим ΠΆΠ΅ Π±Π»ΠΎΠΊ-схСмах.

Π‘Π»ΠΎΠΊ-схСма это графичСскоС ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ (Π²Π°ΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ).

И Ρ‚Π°ΠΊ, Π±ΡƒΠ΄Ρƒ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ ΠΊΠ°ΠΊ программист программисту, ΠΏΠΎ ΠΌΠΎΠ΅ΠΌΡƒ мнСнию Π±Π»ΠΎΠΊ-схСмы ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ³Π΄Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π½Π΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π² Π³ΠΎΠ»ΠΎΠ²Π΅ (10-20 if else) Π²ΠΎΡ‚ Ρ‚ΠΎΠ³Π΄Π° Ρ‚ΠΎ ΠΈ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ такая ΠΌΡ‹ΡΠ»ΡŒ ΠΊΠ°ΠΊ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ это, Π² Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π±Π»ΠΎΠΊΠ½ΠΎΡ‚, ΠΈΠ»ΠΈ Π½Π° Π±ΡƒΠΌΠ°Π³Π΅, Ρ‡Ρ‚ΠΎ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎ ΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ здСсь Π½Π΅Ρ‚. Π’ нашСм случаС Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊ-схСмы.

ΠžΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΡ


Π’Π°ΠΊΠΎΠΉ ΠΎΠ²Π°Π» ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π°Ρ‡Π°Π»ΠΎ ΠΈ ΠΊΠΎΠ½Π΅Ρ†, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ .

Π”Π°Π½Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Если Ρƒ вас сильно Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования Ρ‚ΠΎ этот Π±Π»ΠΎΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ всСгда Π΅ΡΡ‚ΡŒ Π² Π²Π°ΡˆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…, Π»ΠΈΡ‡Π½ΠΎ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ слабо Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ‡Ρ‚ΠΎ позволяСт ΠΌΠ½Π΅ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ сразу ΠΏΡ€ΠΈ присваивании Π΅Ρ‘ ΠΊΠ°ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ.

БобствСнно Π²Ρ‹Π²ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π° экран ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ дСйствия.

Ну, ΠΈ Π½Π°ΠΊΠΎΠ½Π΅Ρ†, нашС условиС Ρ€Π°Π΄ΠΈ Ρ‡Π΅Π³ΠΎ ΠΌΡ‹ здСсь ΠΈ ΡΠΎΠ±Ρ€Π°Π»ΠΈΡΡŒ. ΠœΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ true or false.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ запускаСм yEd
file -> new
По срСдинС Π±ΡƒΠ΄Π΅Ρ‚ наша Π±Π»ΠΎΠΊ-схСма, Π° Π²ΠΎΡ‚ справа ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ наши элСмСнты ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Π½ΡƒΠΆΠ½Ρ‹.
ΠŸΠ΅Ρ€Π΅Ρ‚Π°ΡΠΊΠΈΠ²Π°Ρ‚ΡŒ элСмСнты ΠΌΠΎΠΆΠ½ΠΎ справа Π½Π° Π±Π΅Π»Ρ‹ΠΉ лист, Ρ‡Ρ‚ΠΎ Π±Ρ‹ провСсти стрСлочку Π½ΡƒΠΆΠ½ΠΎ: Π½Π° элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ стоит ΠΏΠΎ срСдинС Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΈ отвСсти ΠΌΡ‹ΡˆΠΊΡƒ ΠΎΡ‚ Π½Π΅Π³ΠΎ, ΠΏΡ€ΠΈ этом Π² ΠΏΠΎΠ»Π΅ edge types ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ стрСлочки. Π’ΠΎΡ‚ Ρ‚Π°ΠΊ Ρƒ мСня ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° сайтС Π² ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π±Π»ΠΎΠΊ-схСмы:

image

Заняло Ρƒ мСня это 5 ΠΌΠΈΠ½ΡƒΡ‚. Но Π·Π° Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ я Ρ‚ΠΎΡ‡Π½ΠΎ знаю Ρ‡Ρ‚ΠΎ ΠΈ ΠΊΠ°ΠΊ ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ. А ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° слоТная Ρ‚ΠΎ сдСлав Π±Π»ΠΎΠΊ-схСму ΡƒΠΆΠ΅ моТСшь сразу ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ ΠΈ Π½Π΅ заглядывая Ρ‚ΡƒΠ΄Π°, Ρ‚.ΠΊ. Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ сам написал эту ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ!
Π’ΠΎΠΎΠ±Ρ‰Π΅ΠΌ Π±Π»ΠΎΠΊ-схСмы это ΠΊΡ€ΡƒΡ‚ΠΎ!

Π‘Π»ΠΎΠΊ-схСмы Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². Π“ΠžΠ‘Π’. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ β€” Π‘Π»ΠΎΠ³ программиста

Π‘Ρ…Π΅ΠΌΠ° β€” это абстракция ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ процСсса ΠΈΠ»ΠΈ систСмы, наглядно ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰Π°Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Π΅ части. Π‘Ρ…Π΅ΠΌΡ‹ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ с Π΄Ρ€Π΅Π²Π½ΠΈΡ… Π²Ρ€Π΅ΠΌΠ΅Π½ Π΄ΠΎ настоящСго Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ β€” Ρ‡Π΅Ρ€Ρ‚Π΅ΠΆΠΈ Π΄Ρ€Π΅Π²Π½ΠΈΡ… ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄, ΠΊΠ°Ρ€Ρ‚Ρ‹ зСмСль, ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ элСктричСскиС схСмы. ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Π΄Ρ€Π΅Π²Π½ΠΈΠ΅ ΠΌΠΎΡ€Π΅ΠΏΠ»Π°Π²Π°Ρ‚Π΅Π»ΠΈ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°Ρ€Ρ‚Π°ΠΌΠΈ ΠΈ поэтому Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π΅Π΄ΠΈΠ½ΡƒΡŽ систСму ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€Π°Π²ΠΈΠ» ΠΈΡ… выполнСния. АналогичныС соглашСния Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ для изобраТСния схСм-Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈ Π·Π°ΠΊΡ€Π΅ΠΏΠ»Π΅Π½Ρ‹ Π“ΠžΠ‘Π’ ΠΈ ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Ρ‹ΠΌΠΈ стандартами.

На Ρ‚Π΅Ρ€Ρ€ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Российской Π€Π΅Π΄Π΅Ρ€Π°Ρ†ΠΈΠΈ дСйствуСт

Сдиная систСма ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ (Π•Π‘ΠŸΠ”), Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ являСтся ГосударствСнный стандарт β€” Π“ΠžΠ‘Π’ 19.701-90 Β«Π‘Ρ…Π΅ΠΌΡ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ систСм» [1]. НС смотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ описанныС Π² стандартС обозначСния ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для изобраТСния схСм рСсурсов систСмы, схСм взаимодСйствия ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ Ρ‚.ΠΏ., Π² настоящСй ΡΡ‚Π°Ρ‚ΡŒΠ΅ описана лишь Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° схСм Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

РассматриваСмый Π“ΠžΠ‘Π’ практичСски ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ соотвСтствуСт ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΌΡƒ стандарту ISO 5807:1985.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅:

  1. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π±Π»ΠΎΠΊ-схСм Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²
  2. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π±Π»ΠΎΠΊ-схСм
  3. НуТны Π»ΠΈ Π±Π»ΠΎΠΊ-схСмы? ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π±Π»ΠΎΠΊ-схСм Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²

Π‘Π»ΠΎΠΊ-схСма прСдставляСт собой ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ символов, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… этапам Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰ΠΈΡ… ΠΈΡ… Π»ΠΈΠ½ΠΈΠΉ. ΠŸΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½Π°Ρ линия ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для соСдинСния символа с ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅ΠΌ. Бплошная линия ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ зависимости ΠΏΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ символами ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ½Π°Π±ΠΆΠ°Ρ‚ΡŒΡΡ стрСлкой. Π‘Ρ‚Ρ€Π΅Π»ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ Π΄ΡƒΠ³ΠΈ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ ΠΈ свСрху Π²Π½ΠΈΠ·. Богласно ΠΏ. 4.2.4, Π»ΠΈΠ½ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ символу слСва, Π»ΠΈΠ±ΠΎ свСрху, Π° ΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ снизу, Π»ΠΈΠ±ΠΎ справа.

Π•ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ Π»ΠΈΠ½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для изобраТСния Π±Π»ΠΎΠΊ-схСм ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², Π½ΠΎ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΎΠ½ΠΈ, ΠΊΠ°ΠΊ ΠΈ ряд спСцифичСских символов, Π½Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ. РассмотрСны лишь основныС символы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… всСгда достаточно студСнтам.

flowcharts_terminatorΠ’Π΅Ρ€ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ€ Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π’Π΅Ρ€ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠΌ начинаСтся ΠΈ заканчиваСтся любая функция. Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ указываСтся Π² коммСнтариях ΠΊ Π±Π»ΠΎΠΊΡƒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ€Π°.

flowcharts_dataΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…

Π’ Π“ΠžΠ‘Π’ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ мноТСство символов Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄ Π½Π° ΠΌΠ°Π³Π½ΠΈΡ‚Π½Ρ‹Π΅ Π»Π΅Π½Ρ‚Ρ‹, дисплСи ΠΈ Ρ‚.ΠΏ. Если источник Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»Π΅Π½, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ символ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π² коммСнтариях.

flowcharts_processΠ’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ

Π’ Π±Π»ΠΎΠΊΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ нСсколько (Π“ΠžΠ‘Π’ Π½Π΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚) ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ присваивания, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΡ… Π²Ρ‹Π·ΠΎΠ²Π° Π²Π½Π΅ΡˆΠ½ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

flowcharts_solutionΠ‘Π»ΠΎΠΊ, ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

Π‘Π»ΠΎΠΊ Π² Π²ΠΈΠ΄Π΅ Ρ€ΠΎΠΌΠ±Π° ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ Π²Ρ…ΠΎΠ΄ ΠΈ нСсколько подписанных Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠ². Π’ случаС, Ссли Π±Π»ΠΎΠΊ ΠΈΠΌΠ΅Π΅Ρ‚ 2 Π²Ρ‹Ρ…ΠΎΠ΄Π° (соотвСтствуСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ вСтвлСния), Π½Π° Π½ΠΈΡ… подписываСтся Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ сравнСния β€” Β«Π΄Π°/Π½Π΅Ρ‚Β». Если ΠΈΠ· Π±Π»ΠΎΠΊΠ° Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ большСС число Π»ΠΈΠ½ΠΈΠΉ (ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π±ΠΎΡ€Π°), Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π΅Π³ΠΎ записываСтся имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π° Π½Π° выходящих Π΄ΡƒΠ³Π°Ρ… β€” значСния этой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

flowcharts_procedureΠ’Ρ‹Π·ΠΎΠ² внСшнСй ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

Π’Ρ‹Π·ΠΎΠ² Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ помСщаСтся Π² ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ линиями.

flowcharts_loopНачало ΠΈ ΠΊΠΎΠ½Π΅Ρ† Ρ†ΠΈΠΊΠ»Π°

Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹ Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° Ρ†ΠΈΠΊΠ»Π° содСрТат имя ΠΈ условиС. УсловиС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· символов ΠΏΠ°Ρ€Ρ‹. РасполоТСниС условия, опрСдСляСт Ρ‚ΠΈΠΏ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ символам Π½Π° языкС высокого уровня β€” ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ с прСдусловиСм (while) ΠΈΠ»ΠΈ постусловиСм (do … while).

flowcharts_preprocessΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…

Π‘ΠΈΠΌΠ²ΠΎΠ» Β«ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…Β» Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ (Π² Π“ΠžΠ‘Π’ Π½Π΅Ρ‚ Π½ΠΈ пояснСний, Π½ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²), Π·Π°Π΄Π°Π΅Ρ‚ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ значСния. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ для задания Ρ†ΠΈΠΊΠ»ΠΎΠ² со счСтчиком.

flowcharts_connectorΠ‘ΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒ

Π’ случаС, Ссли Π±Π»ΠΎΠΊ-схСма Π½Π΅ умСщаСтся Π½Π° лист, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ символ соСдинитСля, ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠΉ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΏΠΎΡ‚ΠΎΠΊΠ° управлСния ΠΌΠ΅ΠΆΠ΄Ρƒ листами. Π‘ΠΈΠΌΠ²ΠΎΠ» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ листС, Ссли ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ Ρ‚ΡΠ½ΡƒΡ‚ΡŒ линию Π½Π΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎ.

flowcharts_commentΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ соСдинСн ΠΊΠ°ΠΊ с ΠΎΠ΄Π½ΠΈΠΌ Π±Π»ΠΎΠΊΠΎΠΌ, Ρ‚Π°ΠΊ ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ. Π“Ρ€ΡƒΠΏΠΏΠ° Π±Π»ΠΎΠΊΠΎΠ² выдСляСтся Π½Π° схСмС ΠΏΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π±Π»ΠΎΠΊ-схСм

Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², построСны Π±Π»ΠΎΠΊ-схСмы ΠΎΡ‡Π΅Π½ΡŒ простых Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² сортировки, ΠΏΡ€ΠΈ этом Π°ΠΊΡ†Π΅Π½Ρ‚ сдСлан Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ², Ρ‚.ΠΊ. Ρƒ студСнты Π΄Π΅Π»Π°ΡŽΡ‚ наибольшСС число ошибок ΠΈΠΌΠ΅Π½Π½ΠΎ Π² этой части.

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° вставками

Массив Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ сортировки вставками раздСляСтся Π½Π° ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΈ Π΅Ρ‰Π΅ Π½Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΡƒΡŽ части. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ отсортированная Ρ‡Π°ΡΡ‚ΡŒ состоит ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта, ΠΈ постСпСнно увСличиваСтся.

На ΠΊΠ°ΠΆΠ΄ΠΎΠΌ шагС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° выбираСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ части массива ΠΈ вставляСтся Π² ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Π½Π΅ΠΉ сохранялся Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ порядок слСдования элСмСнтов. Вставка ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π² ΠΊΠΎΠ½Π΅Ρ† массива, Ρ‚Π°ΠΊ ΠΈ Π² сСрСдину. ΠŸΡ€ΠΈ вставкС Π² сСрСдину Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π²ΠΈΠ½ΡƒΡ‚ΡŒ всС элСмСнты, располоТСнныС Β«ΠΏΡ€Π°Π²Π΅Π΅Β» ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ вставки Π½Π° ΠΎΠ΄ΠΈΠ½ элСмСнт Π²ΠΏΡ€Π°Π²ΠΎ. Π’ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π΄Π²Π° Ρ†ΠΈΠΊΠ»Π° β€” Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ элСмСнты Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ части, Π° Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ осущСствляСтся вставка.

insertsort_flowchartΠ‘Π»ΠΎΠΊ-схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° сортировки вставками

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π±Π»ΠΎΠΊ-схСмС для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ символ вСтвлСния. Π’ Π³Π»Π°Π²Π½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ (i < n) ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ элСмСнты Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ части массива. Если всС элСмСнты ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ β€” Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС выполняСтся поиск ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ для вставки i-Ρ‚ΠΎΠ³ΠΎ элСмСнта. Искомая позиция Π±ΡƒΠ΄Π΅Ρ‚ сохранСна Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ j Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ Ρ†ΠΈΠΊΠ»Π°, ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‰Π΅ΠΌ сдвиг элСмСнтов Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΉΠ΄Π΅Π½ элСмСнт, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ мСньшС i-Ρ‚ΠΎΠ³ΠΎ.

На Π±Π»ΠΎΠΊ-схСмС ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ символ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° β€” Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для соСдинСния частСй схСм, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹Ρ… Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… листах, Π½ΠΎ ΠΈ для сокращСния количСства Π»ΠΈΠ½ΠΈΠΉ. Π’ рядС случаСв это позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ пСрСсСчСния Π»ΠΈΠ½ΠΈΠΉ ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ восприятиС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΡƒΠ·Ρ‹Ρ€ΡŒΠΊΠΎΠΌ

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΡƒΠ·Ρ‹Ρ€ΡŒΠΊΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈ сортировка вставками, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π΄Π²Π° Ρ†ΠΈΠΊΠ»Π°. Π’ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ выполняСтся ΠΏΠΎΠΏΠ°Ρ€Π½ΠΎΠ΅ сравнСниС элСмСнтов ΠΈ, Π² случаС Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ порядка ΠΈΡ… слСдования, пСрСстановка. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния ΠΎΠ΄Π½ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ Ρ†ΠΈΠΊΠ»Π°, ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ смСщСн Π² ΠΊΠΎΠ½Π΅Ρ† массива. Π’Π½Π΅ΡˆΠ½ΠΈΠΉ Ρ†ΠΈΠΊΠ» выполняСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° вСсь массив Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ отсортирован.

bubblesort_flowchartΠ‘Π»ΠΎΠΊ-схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° сортировки ΠΏΡƒΠ·Ρ‹Ρ€ΡŒΠΊΠΎΠΌ

На Π±Π»ΠΎΠΊ-схСмС ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ использованиС символов Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° Ρ†ΠΈΠΊΠ»Π°. УсловиС внСшнСго Ρ†ΠΈΠΊΠ»Π° (А) провСряСтся Π² ΠΊΠΎΠ½Ρ†Π΅ (с постусловиСм), ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° пСрСмСнная hasSwapped ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true. Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Ρ†ΠΈΠΊΠ» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ прСдусловиС для ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° ΠΏΠ°Ρ€ сравниваСмых элСмСнтов. Π’ случаС, Ссли элСмСнты располоТСны Π² Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ порядкС, выполняСтся ΠΈΡ… пСрСстановка посрСдством Π²Ρ‹Π·ΠΎΠ²Π° внСшнСй ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ (swap). Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ понятно Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ внСшнСй ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈ порядок слСдования Π΅Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. Π’ случаС, Ссли функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ написан ΠΊ символу Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ€Ρƒ ΠΊΠΎΠ½Ρ†Π°.

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ

Π’ сортировкС Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ массив раздСляСтся Π½Π° ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΈ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΡƒΡŽ части. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ отсортированная Ρ‡Π°ΡΡ‚ΡŒ пустая, Π½ΠΎ постСпСнно ΠΎΠ½Π° увСличиваСтся. Алгоритм ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ поиск минимального элСмСнта Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ части ΠΈ мСняСт Π΅Π³ΠΎ мСстами с ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ элСмСнтом Ρ‚ΠΎΠΉ ΠΆΠ΅ части, послС Ρ‡Π΅Π³ΠΎ считаСтся, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½ (отсортированная Ρ‡Π°ΡΡ‚ΡŒ увСличиваСтся).

selectsort_flowchartΠ‘Π»ΠΎΠΊ-схСма сортировки Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ

На Π±Π»ΠΎΠΊ-схСмС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования Π±Π»ΠΎΠΊΠ° Β«ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ°Β», Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π² рядС случаСв ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π±ΠΎΠ»Π΅Π΅ Β«ΡƒΠΊΡ€ΡƒΠΏΠ½Ρ‘Π½Π½ΠΎΒ» (Π½Π΅ вдаваясь Π² Π΄Π΅Ρ‚Π°Π»ΠΈ). К сортировкС Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π΄Π΅Ρ‚Π°Π»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ поиска индСкса минимального элСмСнта массива, поэтому ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ описаны символом Π²Ρ‹Π·ΠΎΠ²Π° внСшнСй ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. Если Π±Π»ΠΎΠΊ-схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° внСшнСй ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ отсутствуСт, Π½Π΅ ΠΏΠΎΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊ символу Π²Ρ‹Π·ΠΎΠ²Π° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с говорящими названиями Ρ‚ΠΈΠΏΠ° swap, sort, … .

На Π±Π»ΠΎΠ³Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π±Π»ΠΎΠΊ-схСм:

Π§Π°ΡΡ‚ΡŒ студСнтов Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ пытаСтся Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊ-схСмы Π² Microsoft Word, Π½ΠΎ это оказываСтся слоТно ΠΈ Π½Π΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. НапримСр, Π² MS Word Π½Π΅Ρ‚ стандартного Π±Π»ΠΎΠΊΠ° для Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ€Π° Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° (ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ со скруглСнными краями, Π° Π½Π΅ ΠΎΠ²Π°Π»). НаиболСС ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌΠΈ, Π½Π° ΠΌΠΎΠΉ взгляд, ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ MS Visio ΠΈ yEd [5], ΠΎΠ±Π΅ ΠΎΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС, Ρ‡Π΅ΠΌ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊ-схСмы (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ UML), Π½ΠΎ пСрвая являСтся ΠΏΠ»Π°Ρ‚Π½ΠΎΠΉ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄ Windows, вторая бСсплатная ΠΈ кроссплатфомрСнная. ВсС Π±Π»ΠΎΠΊ-схСмы Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ с использованиСм yEd.

НуТны Π»ΠΈ Π±Π»ΠΎΠΊ-схСмы? ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹

ЧастныС ΠΊΠΎΠ½Ρ‚ΠΎΡ€Ρ‹ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π±Π»ΠΎΠΊ-схСмы Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚, Π² ΠΊΠ½ΠΈΠΆΠΊΠ°Ρ… ΠΏΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌ [6] вмСсто Π½ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ словСсноС описаниС (псСвдокод) ΠΊΠ°ΠΊ Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€Π°Ρ‚ΠΊΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π»ΠΎΠΊ-схСмы ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ Π½Π° государствСнных прСдприятиях, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ„ΠΎΡ€ΠΌΠ»ΡΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ согласно трСбованиям Π•Π‘ΠŸΠ”, Π½ΠΎ Π΅ΡΡ‚ΡŒ сомнСния β€” Π΄Π°ΠΆΠ΅ для рСгистрации ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² ГосударствСнном рССстрС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для Π­Π’Πœ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π±Π»ΠΎΠΊ-схСм Π½Π΅ трСбуСтся.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊ-схСмы Π·Π°ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ школьников (ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΠ· ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠΎΠ² Π“ΠžΠ‘Π’ Π½Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚) β€” выносят вопросы Π½Π° государствСнныС экзамСны (Π“Π˜Π ΠΈ Π•Π“Π­), студСнтов β€” ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ Π΄ΠΈΠΏΠ»ΠΎΠΌ сдаСтся Π½Π° Π½ΠΎΡ€ΠΌΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ, Π³Π΄Π΅ провСряСтся соотвСтствиС схСм стандартам.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π±Π»ΠΎΠΊ-схСм выполняСтся Π½Π° этапах проСктирования ΠΈ докумСнтирования, согласно каскадной ΠΌΠΎΠ΄Π΅Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ПО, которая сСйчас ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ примСняСтся, Ρ‚.ΠΊ. сопровоТдаСтся большими рисками, связанными с ошибками Π½Π° этапах проСктирования.

ΠŸΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ подозрСния, Ρ‡Ρ‚ΠΎ систСма образования ΠΏΡ€ΠΎΠ³Π½ΠΈΠ»Π° ΠΈ отстала Π»Π΅Ρ‚ Π½Π° 20, ΠΎΠ΄Π½Π°ΠΊΠΎ аналогичная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π½Π°Π±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ ΠΈ Π·Π° Ρ€ΡƒΠ±Π΅ΠΆΠΎΠΌ. ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Ρ‹ΠΉ стандарт ISO 5807:1985 ΠΌΠ°Π»ΠΎ Ρ‡Π΅ΠΌ отличаСтся ΠΎΡ‚ Π“ΠžΠ‘Π’ 19.701-90, Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ стандарта Π·Π° Ρ€ΡƒΠ±Π΅ΠΆΠΎΠΌ Π½Π΅Ρ‚. Π’Π°ΠΌ ΠΆΠ΅ производится мноТСство ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для выполнСния этих самых схСм β€” Dia, MS Visio, yEd, …, Π° Π·Π½Π°Ρ‡ΠΈΡ‚ ΡΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… Π½Π΅ ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡ‚ΡΡ. ВмСсто Π±Π»ΠΎΠΊ-схСм ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ UML [6], ΠΎΠ΄Π½Π°ΠΊΠΎ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΎΠ½ΠΈ ΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ, Ρ€Π°Π·Π²Π΅ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ².

ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈ поднимаСтся вопрос ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½ΠΈ Π±Π»ΠΎΠΊ-схСмы, Π½ΠΈ UML Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹, Π΄Π° ΠΈ докумСнтация Ρ‚ΠΎΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½Π°. Об этом твСрдят программисты, ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΡΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования (XP) [7], ходя Π΄Π°ΠΆΠ΅ Π² ΠΈΡ… ΠΊΡ€ΡƒΠ³Ρƒ Π½Π΅Ρ‚ Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ мнСния.

Π’ рядС случаСв, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· рисования Π±Π»ΠΎΠΊ-схСм, Ρ‚.ΠΊ. это ΠΎΠ΄ΠΈΠ½ процСсс β€” ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ языки программирования, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π”Π ΠΠšΠžΠ [8], ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π±Π»ΠΎΠΊ-схСмы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² (Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° ΠΈΡ… коррСктности) ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΈΠ½Π΄ΡƒΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠΉ Π€Π»ΠΎΠΉΠ΄Π° [9].

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ мнСния Π½Π΅Ρ‚. ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Π΅ΡΡ‚ΡŒ области, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Π΅Π· Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ Ρ‚ΠΈΠΏΠ° Π±Π»ΠΎΠΊ-схСм ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ нСльзя, Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΎΠΉ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ Π½Π΅Ρ‚. Для Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ Π±Π»ΠΎΠΊ-схСмы, Π½ΠΎ для проСктирования ΠΈ докумСнтирования Ρ‚Π°ΠΊΠΈΠ΅ схСмы Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ β€” я ΡΡ‡ΠΈΡ‚Π°ΡŽ Ρ€Π°Π·ΡƒΠΌΠ½Ρ‹ΠΌ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… программистов ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ лишь Ρ‚Π΅ схСмы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΈ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… усилий для поддСрТания Π² Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ состоянии [10].

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников:

  1. Π“ΠžΠ‘Π’ 19.701–90 (ИБО 5807–85) «Единая систСма ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Β­Ρ†ΠΈΠΈΒ».
  2. Алгоритм. Бвойства Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° \ https://pro-prof.com/archives/578
  3. Алгоритмы сортировки слияниСм ΠΈ быстрой сортировки \ https://pro-prof.com/archives/813
  4. yEd Graph Editor \ https://www.yworks.com/products/yed
  5. Книги: Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ \ https://pro-prof.com/books-algorithms
  6. Π Π°ΠΌΠ±ΠΎ Π”ΠΆ., Якобсон А., Π‘ΡƒΡ‡ Π“. UML: ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ справочник. -БПб.: ΠŸΠΈΡ‚Π΅Ρ€, 2002. -656 с.
  7. ΠšΠ΅Π½Ρ‚ Π‘Π΅ΠΊ Π­ΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· тСстированиС – БПб.: ΠŸΠΈΡ‚Π΅Ρ€ – 2003
  8. Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык Π”Π ΠΠšΠžΠ \ https://drakon.su/
  9. Π¨ΠΈΠ»ΠΎΠ² Н.Π’. ВСрификация шаблонов Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² для ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΎΡ‚ΠΊΠ°Ρ‚Π° ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π²Π΅Ρ‚Π²Π΅ΠΉ ΠΈ Π³Ρ€Π°Π½ΠΈΡ†. ΠœΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π°Π½Π°Π»ΠΈΠ· ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, ISSN 1818 – 1015, Ρ‚.18, β„–4, 2011
  10. Брукс Π€., ΠœΠΈΡ„ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎ β€” мСсяц ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ систСмы. БПб. Π‘ΠΈΠΌΠ²ΠΎΠ» Плюс, 1999 β€” 304 с. ΠΈΠ».

7 бСсплатных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для построСния Π±Π»ΠΎΠΊ-схСм Π² Windows 10

Π‘Π»ΠΎΠΊ-схСмы пригодятся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ², программистов ΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠ². ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΈΠ· ΠΈΡ… создания, особСнно Π² качСствС способа Ρ€Π°Ρ†ΠΈΠΎΠ½Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ вашСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ ΠΆΠΈΠ·Π½ΠΈ, ΠΈ Π΄Π°ΠΆΠ΅ избавлСния ΠΎΡ‚ Π²Ρ€Π΅Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π΅ΠΊ. ЕдинствСнная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ придётся ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΏΠΎΠ΄ Windows 10 ΠΈ Π² поискС Π²Π°ΠΌ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ ΠΏΠ»Π°Ρ‚Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹. Рассмотрим 7 бСсплатных Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ².

Dia β€” бСсплатноС ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для построСния Π±Π»ΠΎΠΊ-схСм. Оно ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv2. Если Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅ Π»ΡƒΡ‡ΡˆΡƒΡŽ Π±Π΅ΡΠΏΠ»Π°Ρ‚Π½ΡƒΡŽ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρƒ Microsoft Visio, Ρ‚ΠΎ Dia β€” Π»ΡƒΡ‡ΡˆΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики ΠΈ особСнности:

  • ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ ΠΈ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятный интСрфСйс.
  • ДСсятки стандартных Ρ„ΠΎΡ€ΠΌ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ UML, схСмы ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….
  • ДобавляйтС собствСнныС Ρ„ΠΈΠ³ΡƒΡ€Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ XML ΠΈ SVG.
  • ΠžΠΊΡ€Π°ΡˆΠΈΠ²Π°Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌ ΠΈ тСкста Π² стандартныС ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Ρ†Π²Π΅Ρ‚Π°.

yEd Graph Editor β€” это ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ соврСмСнный инструмСнт для построСния Π±Π»ΠΎΠΊ-схСм, Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ, Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π², сСтСвых Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Π²ΠΈΠ΄Π΅ JAR-Ρ„Π°ΠΉΠ»Π° (для Ρ‡Π΅Π³ΠΎ трСбуСтся Java Π² вашСй систСмС) ΠΈΠ»ΠΈ EXE-Ρ„Π°ΠΉΠ»Π° (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ установки Java). ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° мощная ΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ, Π½ΠΎ Π΅ΡΡ‚ΡŒ минус Π² ΡƒΡ€ΠΎΠ΄Π»ΠΈΠ²ΠΎΠΌ интСрфСйсС Π½Π° Π±Π°Π·Π΅ Swing.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики ΠΈ особСнности:

  • ВрСбуСтся ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ°Π»ΠΎ усилий для построСния ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ².
  • НСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² экспорта, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ PNG, JPG, SVG ΠΈ PDF.

ThinkComposer β€” это инструмСнт для профСссионалов. Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Π±Π»ΠΎΠΊ-схСмам, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ бизнСс-ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ классов, гСнСалогичСскиС Π΄Π΅Ρ€Π΅Π²ΡŒΡ, Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ использования ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики ΠΈ особСнности:

  • Π“Π»ΡƒΠ±ΠΎΠΊΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ выраТСния ΠΈΠ΄Π΅ΠΉ.
  • ΠšΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΡ‡Π΅Ρ‚Π°Ρ‚ΡŒ Π² сСбС мноТСство Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ.
  • ГСнСрация ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ PDF, XPS ΠΈΠ»ΠΈ HTML Π½Π° основС Π²Π°ΡˆΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ….
  • Π‘ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ².

Pencil Project β€” ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ трСбуСтся быстроС ΠΈ простоС построСниС Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌΠΈ Π½Π° ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики ΠΈ особСнности:

  • Π’ΠΎΠ½Π½Ρ‹ встроСнных Ρ„ΠΈΠ³ΡƒΡ€ для всСх Ρ‚ΠΈΠΏΠΎΠ² Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² ΠΈ интСрфСйсов.
  • Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡ‚Π΅ свои собствСнныС Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ устанавливайтС ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ, созданныС Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ.
  • НСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² экспорта, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ PNG, SVG, PDF ΠΈ HTML.
  • Π˜ΠΌΠΏΠΎΡ€Ρ‚ рисунков ΠΈΠ· OpenClipart.org для использования Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ… ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°Ρ….

LibreOffice, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, являСтся Π»ΡƒΡ‡ΡˆΠ΅ΠΉ бСсплатной Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²ΠΎΠΉ Microsoft Office для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ тСкстов, элСктронных Ρ‚Π°Π±Π»ΠΈΡ†, ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΠΉ ΠΈ Π΄Π°ΠΆΠ΅ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ. Π‘ LibreOffice Draw Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Ρ„ΠΈΠ³ΡƒΡ€Ρ‹, символы, Π»ΠΈΠ½ΠΈΠΈ, соСдинСния, тСкст, изобраТСния ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики ΠΈ особСнности:

  • ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ страниц, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для всСх Π²ΠΈΠ΄ΠΎΠ² Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ².
  • Бтраничная ΠΊΠ°Ρ€Ρ‚Π° ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ….
  • Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ манипуляции с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ 3D-ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€.
  • МоТно ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Microsoft Visio.

Diagram Designer нСсколько ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π΅Π½, ΠΈ отчасти это связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ обновлялся с 2015 Π³ΠΎΠ΄Π°. Но ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° прСкрасно Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Windows 10, ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ эффСктивна для создания Π±Π»ΠΎΠΊ-схСм.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики ΠΈ особСнности:

  • ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π² использовании интСрфСйс.
  • НСт Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΡΠΊΠΎΡ€ΡΡŽΡ‚ процСсс обучСния.
  • Π˜ΠΌΠΏΠΎΡ€Ρ‚ ΠΈ экспорт PNG, JPG, BMP, GIF, ICO ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

PlantUML отличаСтся ΠΎΡ‚ всСх Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² этом спискС. ВмСсто графичСского интСрфСйса Π²Ρ‹ создаСтС свои Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ язык сцСнариСв PlantUML. Π­Ρ‚ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ инструмСнт для программистов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π»ΡŽΠ±ΡΡ‚ ΠΏΠ΅Ρ€Π΅Ρ‚Π°ΡΠΊΠΈΠ²Π°Ρ‚ΡŒ ΠΌΡ‹ΡˆΡŒΡŽ. PlantUML Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Java Π² вашСй систСмС.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики ΠΈ особСнности:

  • ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ связСй с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ языка сцСнариСв PlantUML.
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ мноТСство Ρ‚ΠΈΠΏΠΎΠ² Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ: ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ рСгистр, класс, Π“Π°Π½Ρ‚Ρ‚ ΠΈ Ρ‚.Π΄.
  • ЭкспортируйтС Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ PNG, SVG ΠΈΠ»ΠΈ LaTeX.

ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ с makeuseof.com


Бпасибо, Ρ‡Ρ‚ΠΎ Ρ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅! ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° ΠΌΠΎΠΉ ΠΊΠ°Π½Π°Π» Π² Telegram ΠΈ ЯндСкс.Π”Π·Π΅Π½. Волько Ρ‚Π°ΠΌ послСдниС обновлСния Π±Π»ΠΎΠ³Π° ΠΈ новости ΠΌΠΈΡ€Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. Π’Π°ΠΊΠΆΠ΅, Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ мСня Π² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтях: Facebook, Twitter, VK,Β OK.

РСспСкт Π·Π° пост! Бпасибо Π·Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ!

Π₯ΠΎΡ‚ΠΈΡ‚Π΅ большС постов? Π£Π·Π½Π°Π²Π°Ρ‚ΡŒ новости Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ? Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ±Π·ΠΎΡ€Ρ‹ Π½Π° Π³Π°Π΄ΠΆΠ΅Ρ‚Ρ‹? Для всСго этого, Π° Ρ‚Π°ΠΊΠΆΠ΅ для продвиТСния сайта, ΠΏΠΎΠΊΡƒΠΏΠΊΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π° ΠΈ ΠΎΠΏΠ»Π°Ρ‚Ρ‹ хостинга, ΠΌΠ½Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΎΡ‚ вас, ΠΏΡ€Π΅Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½Ρ‹Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΠΈ. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Π΄ΠΎΠ½Π°Ρ‚Π°Ρ… Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π½Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ страницС.

На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒ ΠΏΠ°Ρ‚Ρ€ΠΎΠ½ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ СТСмСсячно ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠ³ Π΄ΠΎΠ½Π°Ρ‚ΠΎΠΌ, ΠΈΠ»ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ЯндСкс.Π”Π΅Π½ΡŒΠ³Π°ΠΌΠΈ, WebMoney, QIWI ΠΈ PayPal:

Бпасибо! ВсС собранныС срСдства Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡƒΡ‰Π΅Π½Ρ‹ Π½Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ сайта. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° являСтся ΠΏΠΎΠ΄Π°Ρ€ΠΊΠΎΠΌ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρƒ сайта.

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ ссылкой:

ΠŸΠΎΡ…ΠΎΠΆΠ΅Π΅

АвтоматичСская Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ python-ΠΊΠΎΠ΄Π° с использованиСм Π±Π»ΠΎΠΊ-схСм / Habr

Π Π΅Ρ‡ΡŒ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ ΠΎ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, которая Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ инструмСнтов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅.

image

ΠžΠ±Ρ‰ΠΈΠΉ Π²ΠΈΠ΄ срСды с Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ прСдставлСниями ΠΊΠΎΠ΄Π°

Π—Π΄Π΅ΡΡŒ ΠΎΠΊΠ½ΠΎ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ€Π°Π·Π±ΠΈΡ‚ΠΎ Π½Π° Π΄Π²Π΅ части. Π‘Π»Π΅Π²Π° β€” ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹ΠΉ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, Π° справа β€” автоматичСски гСнСрируСмая Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°, ΠΏΠΎ возмоТности приблиТСнная ΠΊ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ Π±Π»ΠΎΠΊ-схСмам Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². ГСнСрация ΠΈ пСрСрисовка Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ производится ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ Π½Π°Π±ΠΈΠ²ΠΊΠΈ тСкста. Π‘Ρ€Π΅Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ опрСдСляСт ΠΏΠ°ΡƒΠ·Ρƒ Π² дСйствиях Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈ обновляСт Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ, Ссли ΠΊΠΎΠ΄ остаСтся ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ появляСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с тСкстом ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½ΠΎ ΠΈ с Π΅Π³ΠΎ графичСским прСдставлСниСм.

Π‘Π»ΠΎΠΊ-схСмы Π² Π΄ΠΈΠΊΠΎΠΉ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π΅


А Π½ΡƒΠΆΠ½Ρ‹ Π»ΠΈ Π±Π»ΠΎΠΊ-схСмы Π²ΠΎΠΎΠ±Ρ‰Π΅?

Мой ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π±Π»ΠΎΠΊ-схСмы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΈ Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, зависит ΠΎΡ‚ Π·Π°Π΄Π°Ρ‡ΠΈ. МоТно Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π΄Π²Π° Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… сцСнария Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°:

  • созданиС Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния с чистого листа
  • ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΈ модификация ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ²

Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Π±Π»ΠΎΠΊ-схСмы Π² ΠΎΠ±ΠΎΠΈΡ… случаях, хотя ΠΈ слСгка ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ.

Π’ случаС Π½ΠΎΠ²ΠΎΠ³ΠΎ ПО я ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ «свСрху Π²Π½ΠΈΠ·Β». Π‘Π½Π°Ρ‡Π°Π»Π° рисуСтся Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Π² Π²ΠΈΠ΄Π΅ абстрактных Π±Π»ΠΎΠΊΠΎΠ² ΠΈ Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π»ΠΈΡ†, Π·Π°Ρ‚Π΅ΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ подсистСмы ΠΏΡ€ΠΎΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ, Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ достигая уровня Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ языка программирования. РазумССтся, я Π½Π΅ ΠΏΡ€ΠΎΡ€ΠΈΡΠΎΠ²Ρ‹Π²Π°ΡŽ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ всС, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ части, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ затруднСния ΠΈΠ»ΠΈ особый интСрСс. Π˜ΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ ПО инструмСнты Π²Ρ€ΠΎΠ΄Π΅ MS Visio ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΌΠ½Π΅ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° высоком ΡƒΡ€ΠΎΠ²Π½Π΅ абстракции. Π˜Π΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ инструмСнт, Ссли Π±Ρ‹ Ρ‚Π°ΠΊΠΎΠ²ΠΎΠΉ имСлся, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» Π±Ρ‹ ΠΏΠΎΠΌΠΎΠ³Π°Ρ‚ΡŒ ΠΈ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ языка программирования, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π² Π΄Π²ΡƒΡ… направлСниях: гСнСрация Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ ΠΊΠΎΠ΄Ρƒ ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΠΊΠΎΠ΄Π° ΠΏΠΎ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅.

Π’ случаС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² типичная β€” ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ ΠΏΠ΅Ρ‡Π°Π»ΡŒ β€” ситуация, ΠΊΠΎΠ³Π΄Π° докумСнтация отсутствуСт, Π° это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ сначала Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΈΠ½ΠΆΠΈΠ½ΠΈΡ€ΠΈΠ½Π³ для понимания Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π—Π΄Π΅ΡΡŒ часто Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ «снизу Π²Π²Π΅Ρ€Ρ…Β». Π’ процСссС чтСния ΠΊΠΎΠ΄Π° Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π³Ρ€ΡƒΠΏΠΏΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Π° Π·Π½Π°Ρ‡ΠΈΡ‚ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ β€” физичСски Π½Π° листС Π±ΡƒΠΌΠ°Π³ΠΈ ΠΈΠ»ΠΈ ΡƒΠΌΠΎΠ·Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ β€” Π±Π»ΠΎΠΊ с подходящим тСкстом Π² Π½Π΅ΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ появляСтся ΠΎΠ΄ΠΈΠ½ элСмСнт вмСсто Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ². Π’ ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ² появляСтся Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠ΄Ρƒ. Π₯ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ инструмСнт, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ Ρ‚Π°ΠΊΠΎΠΉ сцСнарий Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π½ΠΎ я ΠΏΠΎΠΊΠ° Ρ‚Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ Π½Π΅ нашСл.

Для ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ Π½Π° ΠΊΡ€ΡƒΠΏΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π² ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎΠΌ производствС ПО. Π˜ΠΌΠ΅ΡŽΡ‚ΡΡ Π»ΠΈ Ρ‚Π°ΠΊΠΎΠ²Ρ‹Π΅? ΠžΡ‚Π²Π΅Ρ‚ Π½Π° этот вопрос β€” Π΄Π°. НавСрноС, самый ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Ρ‚Π°ΠΊΠΎΠ³ΠΎ сорта, извСстный ΠΌΠ½Π΅, это ПО для ΠΌΠ½ΠΎΠ³ΠΎΡ€Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ космичСского корабля Π‘ΡƒΡ€Π°Π½. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ амСриканских ΠΌΠ½ΠΎΠ³ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΡ€Π°Π±Π»Π΅ΠΉ, совСтский Π±Ρ‹Π» Π½Π΅ ΠΏΠΈΠ»ΠΎΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ, Π° Π·Π½Π°Ρ‡ΠΈΡ‚ вся Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ Π»Π΅Π³Π»Π° Π½Π° ПО, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±Ρ‹Π»ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ΠΎ с использованиСм языка Π”Π ΠΠšΠžΠ. Π”Π ΠΠšΠžΠ использовал ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ графичСскиС Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° всСх этапах проСктирования, Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ тСкстом Π²ΠΎΠΎΠ±Ρ‰Π΅. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Π΄ΠΎΠΊΠ°Π·Π°Π» Π²Ρ‹ΡΠΎΠΊΡƒΡŽ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ПО ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹ΠΌ Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ Π½Π° ΠΎΡ€Π±ΠΈΡ‚Ρƒ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ корабля. Π’ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ… ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°Ρ… Ρ€Π°Π±ΠΎΡ‚Ρ‹ отмСчаСтся Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ нСбольшоС количСство ошибок обусловлСны ΡˆΠΈΡ€ΠΎΠΊΠΈΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ. И сСйчас Π”Π ΠΠšΠžΠ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания ПО Π² космичСской отрасли. К соТалСнию, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ограничСния Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π½Π΅ Π΄Π°ΡŽΡ‚ возмоТности ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π”Π ΠΠšΠžΠΠ° Π² повсСднСвной Ρ€Π°Π±ΠΎΡ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, ΠΏΠΈΡˆΡƒΡ‰Π΅Π³ΠΎ Π½Π° популярном языкС программирования. Однако ΠΎΠ±Ρ‰ΠΈΠΉ Π²Ρ‹Π²ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ: Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Π±Π»ΠΎΠΊ-схСмам Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π΄Π°Ρ‚ΡŒ сущСствСнный Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Ρˆ.


ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ языка Π”Π ΠΠšΠžΠ (с сайта drakon.su)

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ


МоС ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ процСсса Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² Ρ€Π°Π·Ρ€Π΅Π·Π΅ Ρ‚Π΅ΠΌΡ‹ ΡΡ‚Π°Ρ‚ΡŒΠΈ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΊΠΎΠ΄ΠΎΠΌ ΠΊΠ°ΠΊ с тСкстом, Π° ΠΈΠ½ΠΎΠ³Π΄Π° ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ графичСскоС прСдставлСниС. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ инструмСнт Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с двумя прСдставлСниями Π±Π΅Π· Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π³Π»Π°Π΄ΠΊΡƒΡŽ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя прСдставлСниями, ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ это взаимосвязи ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ строчкой ΠΊΠΎΠ΄Π° ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ графичСским элСмСнтом.

Π£Π²Ρ‹, Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ инструмСнта, ΠΏΠΎΡ…ΠΎΠΆΠ΅Π³ΠΎ Π½Π° описанный Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎΠΊΠ° Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ для ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Dia ΠΈΠ»ΠΈ MS Visio, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈ Π² Ρ‚ΠΎΠΉ области, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ. Они ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… стадиях, Π½ΠΎ ΠΈΡ… ΠΎΡ‡Π΅Π½ΡŒ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ частыС измСнСния. Π•ΡΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, Π½Π°Ρ†Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π½Π° ΡΡ‚Π°Π΄ΠΈΡŽ Π΄ΠΈΠ·Π°ΠΉΠ½Π° β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ UML инструмСнты β€” Π½ΠΎ ΠΈΡ… Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅. Π•ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠ΄ΠΎΠ³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ для Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½Ρ‹Ρ… областСй, Π½ΠΎ сгСнСрированный ΠΊΠΎΠ΄ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π½Π°Π·Π²Π°Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ Ссли Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΌ для чтСния. Π•ΡΡ‚ΡŒ графичСскиС инструмСнты, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, Π½ΠΎ ΠΈΡ… практичСски Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΊΠΎΠ΄ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ доступСн Π² Ρ‚Π°ΠΊΠΈΡ… инструмСнтах.

Если Ρ‚Π°ΠΊΠΎΠ³ΠΎ инструмСнта Π½Π΅Ρ‚, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ стоит Π·Π°Π½ΡΡ‚ΡŒΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, которая ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ? Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅Π΅ обсуТдСниС Π±ΡƒΠ΄Π΅Ρ‚ ΠΎ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ срСдС, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅ΠΉ Π΅Π΅. Π‘Ρ€Π΅Π΄Π° позволяСт ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΊΠ°ΠΊ Π½Π° тСкст ΠΈ ΠΊΠ°ΠΊ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ с автоматичСской синхронизациСй ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ. РСализация сдСлана для языка ΠŸΠΈΡ‚ΠΎΠ½ ΠΈ, Π² основном, Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅.

ГрафичСскиС ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹


Π₯ΠΎΡ€ΠΎΡˆΠΈΠΌ Π½Π°Ρ‡Π°Π»ΠΎΠΌ дискуссии ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€ графичСских ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ для прСдставлСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠŸΠΈΡ‚ΠΎΠ½ ΠΊΠΎΠ΄Π°. НачнСм с ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΎΡ‚ тСкста ΠΊ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅: Π½Π° Π²Ρ…ΠΎΠ΄Π΅ имССтся ΠŸΠΈΡ‚ΠΎΠ½ ΠΊΠΎΠ΄, Π° Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ, Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Π½Π½ΡƒΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π°Π±ΠΎΡ€Π° графичСских ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ², соСдинСнных ΠΌΠ΅ΠΆΠ΄Ρƒ собой Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Вопросы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ здСсь Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅. КакиС элСмСнты языка Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ распознавания Π²ΠΎ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅? Как распознанныС элСмСнты Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ нарисованы Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅?

ΠžΠ±ΡΡƒΠ΄ΠΈΠΌ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ ΠΏΠΎ порядку.

Π‘Π»ΠΎΠΊΠΈ ΠΊΠΎΠ΄Π°


ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π΅ всС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ нСпосрСдствСнно Π²Π»ΠΈΡΡŽΡ‚ Π½Π° ΠΏΠΎΡ‚ΠΎΠΊ управлСния. Π’Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊΠΈ ΠΊΠΎΠ΄Π°.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ Π±Π»ΠΎΠΊΠΈ, Π° Π½Π΅ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹? Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ своСм Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΡŽ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ связанныС ΠΏΠΎ смыслу кусочки ΠΊΠΎΠ΄Π°, состоящиС ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Π² Π±ΠΎΠ»Π΅Π΅ ΡƒΠΊΡ€ΡƒΠΏΠ½Π΅Π½Π½Ρ‹Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹. ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ†Π΅Π»ΡŒ Ρ‚Π°ΠΊΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ, это ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½ΠΈΠ΅ понимания ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ. А срСдством Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ слуТат пустыС строки. Π€Π°ΠΊΡ‚ Ρ‚Π°ΠΊΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅.

Π§Ρ‚ΠΎ касаСтся ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π°, Ρ‚ΠΎ Ρ€Π°Π·ΡƒΠΌΠ½Ρ‹ΠΌ каТСтся простой ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π° ΠΈ Π΄Π²Π° Π±Π»ΠΎΠΊΠ°, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠ΄ΠΈΠ½ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ с Ρ€Π°Π·Π½ΠΈΡ†Π΅ΠΉ Π² ΠΊΠΎΠ΄Π΅ Π² ΠΎΠ΄Π½Ρƒ ΠΏΡƒΡΡ‚ΡƒΡŽ строку ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ (здСсь ΠΈ Π΄Π°Π»Π΅Π΅: для всСх ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² сначала слСдуСт Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π° Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ сСрии 2, Π° Π·Π° Π½ΠΈΠΌ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΠΎΠ΅ графичСскоС прСдставлСниС).

c = MyClass( 154 )
c.member = f( 17 )
c.doSomething()
print c


Один блок кода
c = MyClass( 154 )
c.member = f( 17 )

c.doSomething()
print c


Π”Π²Π° Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π° ΠΎΠ΄ΠΈΠ½ Π·Π° ΠΎΠ΄Π½ΠΈΠΌ

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ


Π‘Π»ΠΈΠΆΠ°ΠΉΡˆΠ΅Π΅ рассмотрСниС ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π², Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ размСстил ΠΈΡ… Π² ΠΊΠΎΠ΄Π΅. ΠŸΡƒΡΡ‚Ρ‹Π΅ строки, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ это Π±Ρ‹Π»ΠΎ сдСлано для Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΡ‡Ρ‚Π΅Π½Ρ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ смысловыС Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹. Π˜Ρ‚Π°ΠΊ, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Ρ‚Π°ΠΊΠΈΠ΅:
  • нСзависимыС
  • Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅
  • Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅

НСзависимыС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ ΠΎΠ΄Π½Ρƒ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ сосСдних строк ΠΈ ΠΎΡ‚Π΄Π΅Π»Π΅Π½Ρ‹ ΠΎΡ‚ всСго ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ ΠΎΠ΄Π½ΠΎΠΉ пустой строкой. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ нСзависимых ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Π½Π΅ содСрТат Π½ΠΈΡ‡Π΅Π³ΠΎ, ΠΊΡ€ΠΎΠΌΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π².

Π›ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° нСзависимыС с ΠΎΠ΄Π½ΠΈΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ. Π‘Ρ‚Ρ€ΠΎΠΊΠ°, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Π·Π° послСднСй строкой Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ коммСнтария содСрТит ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠŸΠΈΡ‚ΠΎΠ½Π°. Π’ этом случаС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ вставил ΠΏΡƒΡΡ‚ΡƒΡŽ строку ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅ΠΌ ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ Π±Π»ΠΎΠΊΠΎΠΌ, Π° Π·Π½Π°Ρ‡ΠΈΡ‚, скорСС всСго, это сдСлано Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ β€” ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ прСдназначаСтся ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π±Π»ΠΎΠΊΡƒ.

Π‘ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ справа ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ². Π—Π΄Π΅ΡΡŒ Π΅ΡΡ‚ΡŒ нСсколько Π²Π°ΠΆΠ½Ρ‹Ρ… Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ. Часто Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π° Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ нСсколько строк, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΈΠ· Π½ΠΈΡ…. Π­Ρ‚ΠΎ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡƒΡ‡Ρ‚Π΅Π½ΠΎ. Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° Π΄Π΅Ρ‚Π°Π»ΡŒ касаСтся послСднСй строчки Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ большС, Ρ‡Π΅ΠΌ ΠΎΠ΄Π½Π° строка ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² для Π½Π΅Π΅. Π’Π°ΠΊΠΎΠΉ случай Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡƒΡ‡Ρ‚Π΅Π½ Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅.

ВСорСтичСски ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Ρ‚ΠΈΠΏ β€” Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. Они Π±Ρ‹Π»ΠΈ Π±Ρ‹ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌ коммСнтариям с Ρ€Π°Π·Π½ΠΈΡ†Π΅ΠΉ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ пустой строчки Π½Π΅ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ послСднСй строкой Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π° ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкой Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ коммСнтария. Π’Π°ΠΊΠΎΠΉ случай, ΠΎΠ΄Π½Π°ΠΊΠΎ, скорСС Ρ€Π΅Π΄ΠΊΠΎΡΡ‚ΡŒ, Ρ‡Π΅ΠΌ распространСнная ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ скорСС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ, ΠΈΠ΄ΡƒΡ‰Π΅Π΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎ тСксту, Π° Π½Π΅ Π²Ρ‹ΡˆΠ΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π±Ρ‹Π»ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΎ Π½Π΅ Π²Ρ‹Π΄Π΅Π»ΡΡ‚ΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ для распознаваСмых Ρ‚ΠΈΠΏΠΎΠ² ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π².

НСзависимыС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

a = 154

# Line 1
# Line 2

b = a


НСзависимый ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ нСзависимый ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ состоит ΠΈΠ· Π΄Π²ΡƒΡ… строк. ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ находится ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Π±Π»ΠΎΠΊΠ°ΠΌΠΈ ΠΊΠΎΠ΄Π°, Π° это ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ соотвСтствуСт Π»ΠΈΠ½ΠΈΠΈ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰Π΅ΠΉ Π±Π»ΠΎΠΊΠΈ. ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰Π΅ΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ для этого случая каТСтся ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ коммСнтария, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉ Π·Π°ΠΌΠ΅Ρ‚ΠΊΡƒ, с Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ соСдинитСлСм, Π²Π΅Π΄ΡƒΡ‰ΠΈΠΌ ΠΊ Π»ΠΈΠ½ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ.

Π›ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

# Line 1
# Line 2
a = 154
b = a


Π›ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π­Ρ‚ΠΎΡ‚ Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Π±Π»ΠΎΠΊΠ°, поэтому ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ коммСнтария Π²Ρ‹ΡˆΠ΅ Π±Π»ΠΎΠΊΠ° ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒ, Π²Π΅Π΄ΡƒΡ‰ΠΈΠΉ ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ Π±Π»ΠΎΠΊΡƒ.

Π‘ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

a = 154
b = a       # No comment for the first line
c = b + 1   # Comment for c
            # A tail -----^


Π‘ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ с «хвостом»

Π’ случаС с Π±ΠΎΠΊΠΎΠ²Ρ‹ΠΌ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅ΠΌ трСбуСтся Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊ ΠΏΠ°Ρ€Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ². Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π΅ΡΡ‚ΡŒ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ строчками ΠΊΠΎΠ΄Π° ΠΈ коммСнтариями. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅ Π½Π΅Ρ‚ коммСнтария ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строчкС, ΠΈ Ρ‚Π°ΠΊΠΈΠ΅ ситуации Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΡ‡Ρ‚Π΅Π½Ρ‹ Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами строки Π² ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ΅ коммСнтария Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Ρ‹ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Ρ‹ Π² тСкстС. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, ΠΈΠ½ΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΊ послСднСй строчкС ΠΊΠΎΠ΄Π° Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ большС Ρ‡Π΅ΠΌ ΠΎΠ΄Π½Ρƒ строчку. ΠŸΡ€ΠΈΠ·Π½Π°ΠΊΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ «хвоста» взяты Ρ‚Π°ΠΊΠΈΠΌΠΈ:

  • строка хвостового коммСнтария слСдуСт нСпосрСдствСнно Π·Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ (Π½Π΅Ρ‚ пустых строк)
  • символ # находится Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ строкС

Π˜ΠΌΠΏΠΎΡ€Ρ‚Ρ‹


Π˜ΠΌΠΏΠΎΡ€Ρ‚Ρ‹ приносят с собой зависимости. А ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ зависимостями Π² слоТных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ становится Ρ‚Ρ€ΡƒΠ΄Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° для ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΎΠ², ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ Π±Π΅Π³Π»ΠΎΠΌ просмотрС Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹. Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· этого Π²Ρ‹Π±Ρ€Π°Π½ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ с Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½ΠΎΠΉ Π² Π»Π΅Π²ΠΎΠΉ части ΠΈΠΊΠΎΠ½ΠΊΠΎΠΉ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅.
import sys

# Leading comment for import
from os.path import sep, \
                    isdir       # Side comment

from x import ( y,         # side for y
                name )     # side for name


ΠŸΡ€ΠΈΠΌΠ΅Ρ€ import

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΈ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΈΠΌΠΏΠΎΡ€Ρ‚Ρ‹ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠΉ строки, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… снабТСны Π±ΠΎΠΊΠΎΠ²Ρ‹ΠΌΠΈ коммСнтариями.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ if


ΠžΠ±ΡΡƒΠ΄ΠΈΠΌ ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π±Π»ΠΎΠΊ условия. Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π±Π»ΠΎΠΊ-схСмы Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ Ρ€ΠΎΠΌΠ±. Π ΠΎΠΌΠ± ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚, Ссли условиС, вписанноС Π² Π½Π΅Π³ΠΎ, ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅. На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, ΠΎΠ΄Π½Π°ΠΊΠΎ, условия часто Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ ΠΈ ΠΏΠΎΡ€ΠΎΠΉ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ большС, Ρ‡Π΅ΠΌ ΠΎΠ΄Π½Ρƒ строчку, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ слоТной Π·Π°Π΄Π°Ρ‡Ρƒ Π²ΠΏΠΈΡΠ°Ρ‚ΡŒ всС условиС Π² Ρ€ΠΎΠΌΠ± Ρ€Π°Π·ΡƒΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. Π›ΠΈΠ±ΠΎ Ρ€ΠΎΠΌΠ± становится слишком большим ΠΈ ΠΎΡ‚Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Ρ†Π΅Π½Π½ΠΎΠ³ΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ пространства, Π»ΠΈΠ±ΠΎ ΡˆΡ€ΠΈΡ„Ρ‚ приходится Π΄Π΅Π»Π°Ρ‚ΡŒ слишком ΠΌΠ΅Π»ΠΊΠΈΠΌ, Π»ΠΈΠ±ΠΎ Π½Π°Π΄ΠΎ ΠΏΡ€ΠΈΠ±Π΅Π³Π°Ρ‚ΡŒ ΠΊ сокращСниям Π² исходном тСкстС. ΠšΠΎΠΌΠΏΡ€ΠΎΠΌΠΈΡΡΠ½ΠΎΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠ΅: Π»Π΅Π²Ρ‹Π΅ ΠΈ ΠΏΡ€Π°Π²Ρ‹Π΅ Π³Ρ€Π°Π½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ Ρ€ΠΎΠΌΠ±Π°, Π° Π²Π΅Ρ€Ρ…Π½ΠΈΠ΅ ΠΈ Π½ΠΈΠΆΠ½ΠΈΠ΅ Π³Ρ€Π°Π½ΠΈ станут Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π°Π΄ΠΈ сохранСния мСста ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ частично Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ€ΠΎΠΌΠ±. Π’Π°ΠΊΠΎΠΉ графичСский ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ² ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² зависимости ΠΎΡ‚ слоТности условия.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Π΄Π΅Ρ‚Π°Π»ΡŒ для обсуТдСния β€” это ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΠΈ yes ΠΈ no. Один ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΠΈ справа ΠΈ слСва ΠΎΡ‚ Π±Π»ΠΎΠΊΠ° условия. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΊ соТалСнию, ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ситуации, ΠΊΠΎΠ³Π΄Π° полная Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Ρ€ΡƒΠ΄Π½Π° для чтСния ΠΈ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ красиво. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ‚Π²ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ слоТности, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ большой ΡˆΠΈΡ€ΠΈΠ½Π΅ Π²Π΅Ρ‚Π²Π΅ΠΉ ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΡΠΌΠ΅Ρ‰Π΅Π½ΠΈΡŽ Π±Π»ΠΎΠΊΠ° условия. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΡ€ΠΈ просмотрС потрСбуСтся ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ°, Ρ‡Π΅Π³ΠΎ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹, ΠΏΠΎ возмоТности, ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ.

Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ сообраТСниС касаСтся проСктирования ΠΊΠΎΠ΄Π° Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΏΠΎ ΠΏΡ€ΠΎΡˆΠ΅ΡΡ‚Π²ΠΈΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π₯ΠΎΡ€ΠΎΡˆΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС основныС дСйствия ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Π»ΠΈΡΡŒ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ, Π° нСизбСТная ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок, Ρ€Π΅Π΄ΠΊΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ случаи ΠΈ Ρ‚.ΠΏ. Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Π»ΠΈΡΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π² сторонС. Π’ΠΎΠ³Π΄Π°, Ссли ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π²Ρ‚ΠΎΡ€ позаботился ΠΎΠ± этом, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ назначСния ΠΊΠΎΠ΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ послСдоватСлям быстрСС. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΈ Ρ‚Π°ΠΊΠΎΠΉ ΡΡ‚ΠΈΠ»ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π²Π΅Ρ‚Π²ΠΈ прСдлагаСтся Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: ΠΎΠ΄Π½Ρƒ ΠΈΠ· Π½ΠΈΡ… прямо ΠΏΠΎΠ΄ Π±Π»ΠΎΠΊΠΎΠΌ условия для формирования Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ, Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ справа ΠΎΡ‚ Π±Π»ΠΎΠΊΠ°.

if 154 > 153:
    print "Well, yes"
else:
    pass


ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° if

РазумССтся, Π°Π²Ρ‚ΠΎΡ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ½Π°Π±Π΄ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ части ΠΊΠΎΠ΄Π°, относящиСся ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ if, коммСнтариями. Рассмотрим Π±ΠΎΠ»Π΅Π΅ слоТный ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡƒΡŽ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ.

# Leading for β€˜if’
if ( 154 > 153 and        # Side 1
     1 > 0 ):             # Side 2
    print "Well, yes"
# Leading for β€˜else’
else:
    pass


ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ if с коммСнтариями

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π΅ΡΡ‚ΡŒ Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ для условия. Π’Π°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ для Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π°, Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ для условия ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Π°Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… строк, поэтому ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ коммСнтария Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ справа ΠΎΡ‚ условия ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. К соТалСнию, совсСм ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ пСрСсСчСния соСдинитСля коммСнтария ΠΈ Π²Π΅Ρ‚Π²ΠΈ условия Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ, Π½ΠΎ Π΅ΡΡ‚ΡŒ ΠΈ ΡΠΌΡΠ³Ρ‡Π°ΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ: Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ для условий ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Ρ€Π΅Π΄ΠΊΠΎ, программисты Ρ‡Π°Ρ‰Π΅ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ коммСнтариями.

ПослСдний интСрСсный ΠΌΠΎΠΌΠ΅Π½Ρ‚ касаСтся Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ коммСнтария для else. На Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π½Π΅Ρ‚ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π° для else, Π΅ΠΌΡƒ соотвСтствуСт линия Π²Π΅Ρ‚Π²ΠΈ исполнСния. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ (Ρ‚ΠΎΠΆΠ΅ Ρ€Π΅Π΄ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ) Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π² точности ΠΊΠ°ΠΊ ΠΈ нСзависимый ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ. ОсобСнно Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎΠ³ΠΎ Π² этом Π½Π΅Ρ‚ β€” Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π² точности ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ происходящСС.

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ


ΠŸΠΈΡ‚ΠΎΠ½ Ρ„Π°ΠΉΠ» ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ мноТСство ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ опрСдСлСния Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Ни для Ρ‚ΠΎΠ³ΠΎ, Π½ΠΈ для Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊ-схСмы Π½Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ подходящСго, поэтому Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ΅.

Одна ΠΈΠ· ΠΈΠ΄Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ приходят Π² Π³ΠΎΠ»ΠΎΠ²Ρƒ ΠΏΡ€ΠΈ Ρ€Π°Π·ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΠΈ ΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, касаСтся областСй видимости. ΠžΠ±Π»Π°ΡΡ‚ΡŒ видимости ΠΈΠ³Ρ€Π°Π΅Ρ‚ Ρ€ΠΎΠ»ΡŒ пространства с ΠΎΡ‡Π΅Ρ€Ρ‡Π΅Π½Π½Ρ‹ΠΌΠΈ Π³Ρ€Π°Π½ΠΈΡ†Π°ΠΌΠΈ. Π£ любой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Π΅ΡΡ‚ΡŒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ Π³Π΄Π΅ ΠΎΠ½Π° начинаСтся ΠΈ заканчиваСтся. Π—Π½Π°Ρ‡ΠΈΡ‚ ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ содСрТится графичСскоС прСдставлСниС Ρ‚Π΅Π»Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ДСлая шаг Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π² сторону ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π΅ΡˆΡŒ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΉ ΠŸΠΈΡ‚ΠΎΠ½ ΠΊΠΎΠ΄, часто Π½Π΅ сразу понятСн контСкст: конкрСтная строчка ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ классов ΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ условных конструкций. ИдСя с ΠΎΡ‡Π΅Ρ€Ρ‡Π΅Π½Π½Ρ‹ΠΌΠΈ Π³Ρ€Π°Π½ΠΈΡ†Π°ΠΌΠΈ области видимости ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ быстрСС ΠΏΠΎΠ½ΡΡ‚ΡŒ контСкст выполняСмых дСйствий.

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ сначала Π½Π° простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ.

def f( x ):
    print "Function f( x )"


Π“Ρ€Π°Ρ„ΠΈΠΊΠ° для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

ΠžΠ±Π»Π°ΡΡ‚ΡŒ видимости Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΡ‡Π΅Ρ€Ρ‡Π΅Π½Π° ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠΌ с Π·Π°ΠΊΡ€ΡƒΠ³Π»Π΅Π½Π½Ρ‹ΠΌΠΈ краями ΠΈ Π·Π°Π»ΠΈΡ‚Π° Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Ρ†Π²Π΅Ρ‚ΠΎΠΌ. Π’ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° ΡƒΠΊΠ°Π·Π°Π½Ρ‹ имя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Π΅Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹. Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ ΠΎΡ‚ Ρ‚Π΅Π»Π° Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‡Π΅Ρ€Ρ‚ΠΎΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ спСцифику области видимости, Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ Π»Π΅Π²ΠΎΠΌ ΡƒΠ³Π»Ρƒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ бэдТ, Π² явном Π²ΠΈΠ΄Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ, Ρ‡Ρ‚ΠΎ это функция.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Π±ΠΎΠ»Π΅Π΅ слоТный ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΅ΡΡ‚ΡŒ Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, Π΅ΡΡ‚ΡŒ строка Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ ΠΎΠ΄Π½Ρƒ строчку ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹.

# Leading comment
def g( x,     # x - first argument
       y ):   # y - second argument
    """ Docstring """
   print "Function g( x, y )"


Ѐункция с коммСнтариями ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ

Π“Ρ€Π°Ρ„ΠΈΠΊΠ° Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ коммСнтария ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Π°, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ для Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² прСдставляСт ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ. Из-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ строчки Π±ΠΎΠΊΠΎΠ²ΠΎΠ³ΠΎ коммСнтария Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Ρ‹ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ со списком Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², самым Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ оказалось ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ коммСнтария нСпосрСдствСнно Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. НС ΠΌΠΎΠ³Ρƒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ каТСтся ΠΌΠ½Π΅ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ, Π½ΠΎ ΠΎΠ½ΠΎ ΠΏΠΎΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ всС случаи ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ ΠŸΠΈΡ‚ΠΎΠ½ ΠΊΠΎΠ΄Π° ΠΈ Π½Π΅ допускаСт нСоднозначности.

Для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ области видимости Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ сСкциСй, которая слСдуСт сразу Π·Π° сСкциСй ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ return


Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π±Π»ΠΎΠΊ-схСмы ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ ΡƒΠ΄Π°Ρ‡Π½ΡƒΡŽ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ для Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ с нСбольшими ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ. Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€:
def f( x ):
    return x * 154


ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ return

Π£ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΠ΅ состоит Π² Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈΠΊΠΎΠ½ΠΊΠΈ со стрСлкой Π²Π»Π΅Π²ΠΎ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ return сильно Π²Π»ΠΈΡΡŽΡ‚ Π½Π° ΠΏΠΎΡ‚ΠΎΠΊ управлСния, Ρ‚ΠΎ ΠΈΠΊΠΎΠ½ΠΊΠ° слуТит Ρ†Π΅Π»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ привлСчСния внимания ΠΏΡ€ΠΈ быстром просмотрС ΠΊΠΎΠ΄Π°.

РазумССтся, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ return ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ большС ΠΎΠ΄Π½ΠΎΠΉ строчки ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ случая.

def f( x ):
    # Return leading
    return ( x * 154 +    # Side 1
             X / 154 )    # Side 2


ΠœΠ½ΠΎΠ³ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹ΠΉ return с коммСнтариями

ΠšΠ»Π°ΡΡΡ‹


ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ идСя областСй видимости Π±Ρ‹Π»Π° использована для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊ классам выглядит Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎΠΉ. Π“Ρ€Π°Ρ„ΠΈΠΊΠ° для классов ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ†Π²Π΅Ρ‚Π° Ρ„ΠΎΠ½Π° ΠΈ Π±Π΅Π΄ΠΆΠ°. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ класс с коммСнтариями ΠΈ строкой Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.
# Leading
class C( ClassA,      # Side
         ClassB ):
    "Docstring"
   def __init__( self ):
        ClassA.__init__( self )
        self.__x = 0


ΠŸΡ€ΠΈΠΌΠ΅Ρ€ класса

Π”Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€Ρ‹


Π’ контСкстС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ классов Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€Ρ‹. По сути Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΎΠ±Π΅Ρ€Ρ‚ΠΎΡ‡Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ для ΠΈΡ… Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ всС Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΈΠ΄Π΅Π΅ΠΉ областСй видимости. Для быстрой ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ для Π½ΠΈΡ… свой Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° ΠΈ Π² Π±Π΅Π΄ΠΆ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ символ @.
# Decorator leading
# comment
@decor( x, y )      # decorator
                 # side comment
def f():
    print "Function f()"


Π”Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€ с коммСнтариями

Π¦ΠΈΠΊΠ»Ρ‹


ΠŸΠΈΡ‚ΠΎΠ½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π΄Π²Π° Ρ‚ΠΈΠΏΠ° Ρ†ΠΈΠΊΠ»ΠΎΠ²: for ΠΈ while. Оба Ρ‚ΠΈΠΏΠ° ΠΈΠΌΠ΅ΡŽΡ‚ условиС ΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ break ΠΈ continue. РСшСниС ΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ для Ρ†ΠΈΠΊΠ»ΠΎΠ² Π±Ρ‹Π»ΠΎ нСпростым ΠΈ ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°Π»ΠΎΡΡŒ ΠΎΠ½ΠΎ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… рассуТдСниях.

Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π±Π»ΠΎΠΊ-схСмы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ, которая ΡƒΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° if ΠΈ это Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² силС, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ² для if Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π½Π΅ находится.

Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ρ†ΠΈΠΊΠ»Ρ‹, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ областям видимости, ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π°. На Ρ€ΠΎΠ»ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° области видимости Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ условиС Ρ†ΠΈΠΊΠ»Π°, содСрТимоС области видимости ΠΈΠ³Ρ€Π°Π΅Ρ‚ Ρ€ΠΎΠ»ΡŒ Ρ‚Π΅Π»Π° Ρ†ΠΈΠΊΠ»Π°. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ сообраТСниС состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² случаС использования области видимости, идСя отобраТСния основных дСйствий ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½Π° Π±ΠΎΠ»Π΅Π΅ явно, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ имССтся замкнутая гСомСтричСская Ρ„ΠΈΠ³ΡƒΡ€Π°. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, соСдинитСли Π² случаС Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±Π»ΠΎΠΊ-схСм Π½Π΅ ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ β€œΡΠ²Π΅Ρ€Ρ…Ρƒ вниз” β€” Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· Ρ†ΠΈΠΊΠ»Π° находится справа ΠΎΡ‚ условия Π² Π½Π°Ρ‡Π°Π»Π΅. Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ нСпонятно Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ с else Ρ‡Π°ΡΡ‚ΡŒΡŽ, которая ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π² ΠŸΠΈΡ‚ΠΎΠ½ Ρ†ΠΈΠΊΠ»Π°Ρ….

ПослСднСС сообраТСниС касаСтся ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² break ΠΈ continue. Π’ случаС использования области видимости Ρ‚ΠΎΡ‡ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π΅Π΄ΡƒΡ‚ break ΠΈ continue, становятся ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ β€” ниТняя ΠΈ вСрхняя ΠΊΡ€ΠΎΠΌΠΊΠΈ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°. Π’ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π² случаС Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±Π»ΠΎΠΊ-схСм Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² случаС слоТного Ρ€Π°Π·Π²Π΅Ρ‚Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ (Ссли Π²ΠΎΠΎΠ±Ρ‰Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ) Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Π±Ρ‹Π»Π° ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Π° ΠΈ Π½Π΅ Π±Ρ‹Π»ΠΎ пСрСсСчСний с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ соСдинитСлями.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ идСю области видимости для Ρ†ΠΈΠΊΠ»ΠΎΠ², вопрос с Π²Π΅Π΄ΡƒΡ‰ΠΈΠΌΠΈ ΠΈ Π±ΠΎΠΊΠΎΠ²Ρ‹ΠΌΠΈ коммСнтариями Ρ‚ΠΎΠΆΠ΅ становится ΡƒΠΆΠ΅ Ρ€Π΅ΡˆΠ΅Π½Π½Ρ‹ΠΌ.

for x in [ 1, 17, 42, 154 ]:
    print x


Π¦ΠΈΠΊΠ» for

Π’ Π±ΠΎΠ»Π΅Π΅ слоТных случаях Ρ†ΠΈΠΊΠ» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈ Π±Π»ΠΎΠΊ else. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅.

x = 0
# While loop leading comment
while x < 154:     # while side
                   # comment
    x += 1
# else leading comment
else:              # else side comment
    pass

image
Π¦ΠΈΠΊΠ» while с else Π±Π»ΠΎΠΊΠΎΠΌ ΠΈ коммСнтариями

Π‘Π»ΠΎΠΊ else нарисован Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ области видимости справа ΠΎΡ‚ области видимости Ρ†ΠΈΠΊΠ»Π°. ΠžΠ±Π»Π°ΡΡ‚ΠΈ видимости соСдинСны Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΏΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚ΡŒ Ρ‚Π΅ΡΠ½ΡƒΡŽ Π°ΡΡΠΎΡ†ΠΈΠ°Ρ†ΠΈΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. А Π±Π΅Π΄ΠΆ области видимости Π±Π»ΠΎΠΊΠ° else ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ с Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ. Π˜Π½Π°Ρ‡Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ остаСтся ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ пустым ΠΈ смотрится Π½Π΅ Ρ‚Π°ΠΊ изящно.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ break ΠΈ continue


Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π±Π»ΠΎΠΊ-схСмы Π½Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ для break ΠΈ continue. Им ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ соСдинитСли, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ нСскольким слоТным для Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ вопросам. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈ Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, Π° Π² случаС соСдинитСлСй ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ нСпонятно, ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌ Π±Ρ‹Π»Π° ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Π°. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, соСдинитСли приводят ΠΊ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅ ясной Ρ€Π°Π·Π²ΠΎΠ΄ΠΊΠΈ. Π’Π΅Π»ΠΎ Ρ†ΠΈΠΊΠ»Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слоТным ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ мноТСство ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² break ΠΈ continue. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ (Ссли Π²ΠΎΠΎΠ±Ρ‰Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ) Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Ρ‚Π°ΠΊΠΎΠΉ Ρ€Π°Π·Π²ΠΎΠ΄ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΈΠ·Π»ΠΎΠΌΠΎΠ² ΠΈ Π½Π΅ Π±Ρ‹Π»ΠΎ пСрСсСчСний с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ соСдинитСлями.

Π’ связи с этими ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ Π±Ρ‹Π»ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΎ ввСсти Π½ΠΎΠ²ΡƒΡŽ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ для break ΠΈ continue. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ фактичСски ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅, Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰Π°Ρ ΠΌΠ΅Ρ‚ΠΊΡƒ ΠΈ лишСнная Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ соСдинитСля. Π’Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒ каТСтся ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅, навСрняка Π·Π½Π°Π΅Ρ‚, ΠΊ ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ Π²Π΅Π΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄.

while True:
    if True:
        continue
    else:
        break

image
ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ break ΠΈ continue

РазумССтся, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΎΠ½ΠΈ ΠΎΡ‚Ρ€ΠΈΡΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ, ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ опрСдСляя ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ.

while True:
    if True:
        # Leading 1
        continue     # Side 1
    else:
        # Leading 2
        break        # Side 2

image
ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ break ΠΈ continue с коммСнтариями

Try, except, else, finally


НавСрноС, это самая слоТная конструкция Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅. Помимо try Π±Π»ΠΎΠΊΠ° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ мноТСства except Π±Π»ΠΎΠΊΠΎΠ² ΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ else ΠΈ finally Π±Π»ΠΎΠΊΠΈ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· этих Π±Π»ΠΎΠΊΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ‚ собствСнноС Ρ‚Π΅Π»ΠΎ, Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ области видимости для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ….
try:
    a = x / y
except ZeroDivisionError:
    print "?"
else:
    print "a = ", a
finally:
    print "finally"

image
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ try β€” except β€” else β€” finally

Π‘Π»ΠΎΠΊΠΈ except ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок, Π° Π·Π½Π°Ρ‡ΠΈΡ‚ Π»Π΅ΠΆΠ°Ρ‚ Π²Π½Π΅ основной Π»ΠΈΠ½ΠΈΠΈ выполнСния. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΎΠ½ΠΈ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ справа ΠΎΡ‚ Π±Π»ΠΎΠΊΠ° try. Π‘ Ρ†Π΅Π»ΡŒΡŽ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π°ΠΊΡ†Π΅Π½Ρ‚Π° Π½Π° Ρ‚Π΅ΡΠ½ΡƒΡŽ связь ΠΌΠ΅ΠΆΠ΄Ρƒ try ΠΈ except Π±Π»ΠΎΠΊΠ°ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° пунктирная линия. Если Π±Ρ‹ Π±Ρ‹Π»ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° except, Ρ‚ΠΎ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° β€œΠ²Ρ‹Ρ€ΠΎΡΠ»Π°β€ Π±Ρ‹ Π²ΠΏΡ€Π°Π²ΠΎ, Π³Π΄Π΅ Π±Π»ΠΎΠΊΠΈ except Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Π»ΠΈΡΡŒ Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ Π·Π° ΠΎΠ΄Π½ΠΈΠΌ.

Π‘Π»ΠΎΠΊΠΈ else ΠΈ finally скорСС ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ основной Π»ΠΈΠ½ΠΈΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, поэтому Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΎΠ½ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ Π·Π° try Π±Π»ΠΎΠΊΠΎΠΌ.

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· описанных элСмСнтов ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΈ Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈ Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ отрисованы Ρ‚Π΅ΠΌ ΠΆΠ΅ способом, Ρ‡Ρ‚ΠΎ ΠΈ для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² языка.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ with


ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ with опрСдСляСт контСкст выполнСния, поэтому для Π½Π΅Π³ΠΎ ΠΊΠ°ΠΊ нСльзя Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ идСя областСй видимости.
# Leading
with open( "my-data.txt" ) as f:    # Side
    data = f.read()
    print data

image
ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ with

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ raise


НСт сомнСний, Ρ‡Ρ‚ΠΎ гСнСрация ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π΅Ρ‚ сильнСйшСС влияниС Π½Π° ΠΏΠΎΡ‚ΠΎΠΊ управлСния. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° raise Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ повСрхностном взглядС. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ сообраТСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Π²ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° raise Π΅ΡΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠ΅ свойства с ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ return: ΠΎΠ±Π° Π²Π΅Π΄ΡƒΡ‚ ΠΊ Π²Ρ‹Ρ…ΠΎΠ΄Ρƒ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ области видимости. Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· этого принято Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для raise Ρ‚Ρƒ ΠΆΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ, Ρ‡Ρ‚ΠΎ ΠΈ для return с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΉ ΠΈΠΊΠΎΠ½ΠΊΠΎΠΉ Π² Π»Π΅Π²ΠΎΠΉ части β€” raise Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π±Ρ€ΠΎΡΠ°ΡŽΡ‰ΡƒΡŽΡΡ Π² Π³Π»Π°Π·Π° ΠΊΡ€Π°ΡΠ½ΡƒΡŽ стрСлку.

Как ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ raise ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ нСсколько строк ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²Π΅Π΄ΡƒΡ‰ΠΈΠ΅ ΠΈ Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.

# Leading
raise Exception( "first line "     # Side 1
                 "Second line" )   # Side 2

image
ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ raise

Assert


ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ assert Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ условно, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π»ΠΈΡΡ‚ΡŒ Π½Π° ΠΏΠΎΡ‚ΠΎΠΊ управлСния Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ raise. Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· этого Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ для assert Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΠΊΠΎΠ½ΠΊΡƒ с красной стрСлкой ΠΊΠ°ΠΊ Ρƒ raise, Π½ΠΎ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚ΡŒ ΡƒΡΠ»ΠΎΠ²Π½ΠΎΡΡ‚ΡŒ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.
assert x == 97

# Leading
assert type( x ) is IntType, \
       "x is not an integer"     # Side

image
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π΄Π²ΡƒΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² assert

Π£ΡΠ»ΠΎΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Ρ€ΠΎΠΌΠ±ΠΎΠΌ слСва, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ нарисована ΡƒΠΆΠ΅ знакомая красная стрСлка. РазумССтся, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ assert ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈ Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. Π­Ρ‚ΠΎΡ‚ случай ΠΏΠΎΠΊΠ°Π·Π°Π½ для Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅.

sys.exit()


Π‘Ρ‚Ρ€ΠΎΠ³ΠΎ говоря, Π²Ρ‹Π·ΠΎΠ² sys.exit() Π½Π΅ являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ языка, ΠΎΠ΄Π½Π°ΠΊΠΎ Π²Ρ‹Π·ΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ‚ нСпосрСдствСнноС влияниС Π½Π° ΠΏΠΎΡ‚ΠΎΠΊ управлСния. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ идСя распознавания sys.exit() ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΅Π³ΠΎ подходящим ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ каТСтся ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ.

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ синтаксичСски ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ, Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ сдСлан ΠΈΠΌΠΏΠΎΡ€Ρ‚. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅ дСмонстрируСт ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π°.

if True:
    import sys
    sys.exit( 1 )

    from sys import exit
    exit( 2 )
else:
    from sys import exit as f
    f( 3 )

    from sys import *
    # Leading
    exit( 4 )    # side

image
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ sys.exit()

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π·ΠΎΠ² sys.exit() Ρ‡Π΅Ρ€Π΅Π· eval(), ΠΈ Ρ‚Π°ΠΊΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ΠΈ Ρ€Π΅Π΄ΠΊΠΈ, Π° ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Π΄Π°ΠΆΠ΅ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΡƒΠΆΠ΅ достаточно Ρ…ΠΎΡ€ΠΎΡˆΠΎ.

Π’Ρ‹Π·ΠΎΠ² sys.exit() досрочно Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ являСтся Π°Π½Π°Π»ΠΎΠ³ΠΎΠΌ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π°, ΠΌΠΈΠ½ΡƒΡŽΡ‰Π΅Π³ΠΎ всС ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ ΡƒΡ€ΠΎΠ²Π½ΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° заимствована Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° return, Π° ΠΈΠΊΠΎΠ½ΠΊΠ° Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‰ΡƒΡŽ ΡΡƒΡ‚ΡŒ.

Π€Π°ΠΉΠ»


ПослСдний элСмСнт, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½ΡƒΠΆΠ½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°, это ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ». ΠŸΠΈΡ‚ΠΎΠ½ Ρ„Π°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅:
  • Π‘Ρ‚Ρ€ΠΎΠΊΠ° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ
  • ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ°
  • Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ для запуска

ЕстСствСнным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρ„Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ находятся всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ пСрСчислСнных Π²Ρ‹ΡˆΠ΅ элСмСнтов Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ для Ρ„Π°ΠΉΠ»Π°.
#!/usr/bin/env python
# encoding: utf-8

"""
A file docstring may occupy
a few lines
"""

print "Hello flowcharts"

image
ΠŸΠΈΡ‚ΠΎΠ½ Ρ„Π°ΠΉΠ»

Proof of concept: Codimension Python IDE


Π’Π΅ΠΏΠ΅Ρ€ΡŒ, имСя Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ прСдставлСниС ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ элСмСнты языка Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ ΠΈΡ… ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½Π° графичСском прСдставлСнии, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ созданию инструмСнта. ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ Π²Π°ΠΆΠ½Ρ‹ΠΌ вопросом здСсь являСтся Ρ‚Π°ΠΊΠΎΠΉ: ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ тСкст ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ? Один ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΏΡƒΡ‚Π΅ΠΉ β€” ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ тСкста Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ. Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π±Ρ‹Π» ΠΎΡ‚Π²Π΅Ρ€Π³Π½ΡƒΡ‚ сразу. Π― ΡƒΠ±Π΅ΠΆΠ΄Π΅Π½, Ρ‡Ρ‚ΠΎ Π² зависимости ΠΎΡ‚ ситуации ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚ΡŒ Π² наглядности ΠΈΠ»ΠΈ тСкст, ΠΈΠ»ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, инструмСнт Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Ρ‚ΠΎΡ‚ ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²ΠΈΠ΄ прСдставлСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π±Π΅Π· принСсСния Π² ΠΆΠ΅Ρ€Ρ‚Π²Ρƒ ΠΊΠ°ΠΊΠΎΠ³ΠΎ Π»ΠΈΠ±ΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ. Π’ Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΎΠΉ ΠŸΠΈΡ‚ΠΎΠ½ IDE тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ основноС мСсто. Π›ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ каТСтся Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ это пространство Ρ€Π°Π²Π½ΠΎΠΏΡ€Π°Π²Π½ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ тСкстом ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ.

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π±Ρ‹Π» Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π°Π½Π°Π»ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… IDE с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным тСкстом, с Ρ†Π΅Π»ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ дополнСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»ΠΎ Π±Ρ‹ графичСскоС прСдставлСниС ΠΊΠΎΠ΄Π°. К соТалСнию, Π½ΠΈΡ‡Π΅Π³ΠΎ подходящСго Π½Π°ΠΉΠ΄Π΅Π½ΠΎ Π½Π΅ Π±Ρ‹Π»ΠΎ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π±Ρ‹Π» Π½Π°Ρ‡Π°Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π½Π°Π·Π²Π°Π½Π½Ρ‹ΠΉ Codimension Python IDE.

image
ΠžΠ±Ρ‰ΠΈΠΉ Π²ΠΈΠ΄ Codimension Python IDE

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Codimension IDE Π½Π΅ Π½Π°Ρ‡ΠΈΠ½Π°Π»Π°ΡΡŒ с чистого листа. НСкоторыС ΠΈΠ΄Π΅ΠΈ ΠΈ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Π±Ρ‹Π»ΠΈ заимствованы ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠŸΠΈΡ‚ΠΎΠ½ IDE с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ исходными ΠΊΠΎΠ΄Π°ΠΌΠΈ: eric 4.

На настоящий ΠΌΠΎΠΌΠ΅Π½Ρ‚ Codimension Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ отрисовку графичСского прСдставлСния для ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠŸΠΈΡ‚ΠΎΠ½ (сСрии 2) ΠΊΠΎΠ΄Π°. Π‘Ρ€Π΅Π΄Π° опрСдСляСт ΠΏΠ°ΡƒΠ·Ρƒ Π² Π½Π°Π±ΠΈΠ²ΠΊΠ΅ ΠΊΠΎΠ΄Π° ΠΈ пСрСрисовываСт Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ справа ΠΎΡ‚ тСкста. Если Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄ пСрСстаСт Π±Ρ‹Ρ‚ΡŒ синтаксичСски ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ, Ρ‚ΠΎ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ обновляСтся, Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ состояния Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ тСксту мСняСт Ρ†Π²Π΅Ρ‚ Π½Π° красный.

Π’Π°ΠΊΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΏΠΎΠΊΠ°Π· ΠΏΡƒΡ‚ΠΈ Ρ‡Π΅Ρ€Π΅Π· области видимости ΠΊ Ρ‚ΠΎΠΉ, которая находится ΠΏΠΎΠ΄ курсором ΠΌΡ‹ΡˆΠΈ. Π”Π²ΠΎΠΉΠ½ΠΎΠΉ Ρ‰Π΅Π»Ρ‡ΠΎΠΊ ΠΏΠΎ элСмСнту Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρƒ ΠΊ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρƒ Π² тСкстС. А комбинация клавиш, наТатая ΠΊΠΎΠ³Π΄Π° фокус Π²Π²ΠΎΠ΄Π° находится Π² тСкстовой части, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρƒ ΠΈ подсвСткС ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ графичСского элСмСнта. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ экспорта Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π² популярныС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ SVG, PNG ΠΈ PDF. РазумССтся, здСсь пСрСчислСны Π½Π΅ всС возмоТности IDE, Π° Π² ΠΏΠ»Π°Π½Π°Ρ… Π½ΠΎΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ для графичСского прСдставлСния Π΅Ρ‰Π΅ большС.

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части Π±ΡƒΠ΄Π΅Ρ‚ рассказано ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Codimension IDE с Π°ΠΊΡ†Π΅Π½Ρ‚ΠΎΠΌ Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ. Π‘ΡƒΠ΄ΡƒΡ‚ описаны Π½ΠΎΠ²Ρ‹Π΅ Π΅Ρ‰Π΅ Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ возмоТности, ΠΌΠΈΠΊΡ€ΠΎ язык Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ ΠΈ Ρ‚.ΠΏ.

UPD: ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° вторая Ρ‡Π°ΡΡ‚ΡŒ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *