Stuffcheck

Π‘Π»ΠΎΠ³ ΠΎ практичСском ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ AI-Π°Π³Π΅Π½Ρ‚ΠΎΠ² Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Π΅, систСмном Π΄ΠΈΠ·Π°ΠΉΠ½Π΅, инструмСнтах Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈ создании быстрых минималистичных Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Β· 2 ΠΌΠΈΠ½ чтСния Β· ΠœΠ°Ρ€Ρ‚ΠΈΠ½ Π€Π°ΡƒΠ»Π΅Ρ€ Β· Martin Fowler

Код ΠΊΠ°ΠΊ докумСнтация

ΠŸΠΎΡ‡Π΅ΠΌΡƒ исходный ΠΊΠΎΠ΄ остаСтся Π³Π»Π°Π²Π½Ρ‹ΠΌ источником истины ΠΎ систСмС ΠΈ ΠΊΠ°ΠΊ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΅Π³ΠΎ понятно

Π“ΠΈΠ±ΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π²Π΅Ρ€Π½ΡƒΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. ВаТная Ρ‡Π°ΡΡ‚ΡŒ этой философии β€” ΠΏΡ€ΠΈΠ·Π½Π°Π½ΠΈΠ΅ исходного ΠΊΠΎΠ΄Π° Π³Π»Π°Π²Π½Ρ‹ΠΌ источником Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ систСмС.

Π­Ρ‚ΠΎ Π½Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΡ‚Π°Π²Π°Ρ‚ΡŒΡΡ СдинствСнным Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ. Π’ΠΎΠΏΡ€Π΅ΠΊΠΈ распространСнному Π·Π°Π±Π»ΡƒΠΆΠ΄Π΅Π½ΠΈΡŽ, сторонники ΡΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования Π½ΠΈΠΊΠΎΠ³Π΄Π° ΠΊ этому Π½Π΅ ΠΏΡ€ΠΈΠ·Ρ‹Π²Π°Π»ΠΈ. ВысокоуровнСвая архитСктурная докумСнтация ΠΈ контСкстныС пояснСния ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹.

Однако Ρ‚ΠΎΠ»ΡŒΠΊΠΎ исходный ΠΊΠΎΠ΄ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ достаточной Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚ΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ достовСрно ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ систСмы. Π­Ρ‚Ρƒ ΠΌΡ‹ΡΠ»ΡŒ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сформулировал Π”ΠΆΠ΅ΠΊ Π ΠΈΠ²Π· Π² эссС Β«Π§Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния»: ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния β€” это ΠΈ Π΅ΡΡ‚ΡŒ Π΅Π³ΠΎ исходный ΠΊΠΎΠ΄.

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

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΊΠΎΠ΄ Π±Ρ‹Π²Π°Π΅Ρ‚ слоТно Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ

Главная ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π·Π°ΠΏΡƒΡ‚Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° β€” отсутствиС фокуса Π½Π° Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅. Если Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ ставит ΠΏΠ΅Ρ€Π΅Π΄ собой Ρ†Π΅Π»ΡŒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ понятный тСкст, ΡΡΠ½ΠΎΡΡ‚ΡŒ Π½Π΅ появится сама собой. Π’ унивСрситСтах ΠΈ Π½Π° курсах студСнтов часто ΡƒΡ‡Π°Ρ‚ Π·Π°ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Π½ΠΎ Ρ€Π΅Π΄ΠΊΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΡŽΡ‚, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π΅ понятной для Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ шаг ΠΊ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ‹ β€” ΠΏΡ€ΠΈΠ·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ для чтСния Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ, ΠΈ Ρ†Π΅Π»Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ этот Π½Π°Π²Ρ‹ΠΊ.

Как Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ Π½Π°Π²Ρ‹ΠΊ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°

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

  • РСгулярноС ΠΊΠΎΠ΄-Ρ€Π΅Π²ΡŒΡŽ. ΠžΠ±ΡΡƒΠΆΠ΄Π°ΠΉΡ‚Π΅ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±Π°Π³ΠΈ ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π½ΠΎ ΠΈ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ замысла.
  • ΠŸΠ°Ρ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Π”Π°Π΅Ρ‚ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΡƒΡŽ Ρ€Π΅Π°ΠΊΡ†ΠΈΡŽ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π½Π° структуру ΠΈ ΠΈΠΌΠ΅Π½Π° Π² процСссС написания.
  • Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ классичСской Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ чистоты ΠΊΠΎΠ΄Π° ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π½Ρ‹ Π² ΠΊΠ½ΠΈΠ³Π°Ρ… Β«Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄Β» Π‘Ρ‚ΠΈΠ²Π° МакконнСлла ΠΈ Β«Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Β».

Кодовая Π±Π°Π·Π° ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π΅

Π’ любой ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Ρƒ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ² Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡ΠΊΠΈ ΠΈ стилистичСскиС прСдпочтСния. Однако ΠΊΠΎΠ΄ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ всСй ΠΊΠΎΠΌΠ°Π½Π΄Π΅, Π° Π½Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ Π°Π²Ρ‚ΠΎΡ€Ρƒ.

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