Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π°: Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π° ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½ / Skillbox Media

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π° ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½ / Skillbox Media

#ΡΡ‚Π°Ρ‚ΡŒΠΈ

  • 12

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ тысячСй Ρ€Π°Π·Π½Ρ‹Ρ… способов, ΠΈΒ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Но код придётся ΠΏΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ.

Vkontakte

Twitter

Telegram

Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ссылку

Β vlada_maestro / shutterstock

ΠœΠ°Ρ€ΠΈΠ½Π° Π”Π΅ΠΌΠΈΠ΄ΠΎΠ²Π°

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚, ΠΊΠΎΠ½ΡΡƒΠ»ΡŒΡ‚Π°Π½Ρ‚, спСциалист ΠΏΠΎΒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. Π›Π΅Π³ΠΊΠΎ и доступно рассказываСт о слоТных Π²Π΅Ρ‰Π°Ρ… Π²Β ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΒ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅.

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Β β€” это ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° исходного ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ он стал Π±ΠΎΠ»Π΅Π΅ простым и понятным.

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ нС мСняСт ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, нС исправляСт ошибки и нС добавляСт Π½ΠΎΠ²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. ΠžΠ½Β Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ понятным ΠΈΒ ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ.

НапримСр, Π²ΠΎΡ‚ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ Π½Π°Β Python, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΠΉ список из строки:

list = []
for char in 'abcdef':
 if char != 'c':
	list.append(char * 2)
print(list) # ['aa','bb','dd','ee','ff']

ΠŸΡ€ΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ, ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ² конструктор списков:

list = [char * 2 for char in 'abcdef' if char != 'i']
print (list)

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ нС измСнился, Π½ΠΎΒ ΠΊΠΎΠ΄ стал ΠΏΡ€ΠΎΡ‰Π΅, ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π΅Π΅ и понятнСС.

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΡ… Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ сильно ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ качСство ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π‘Ρ‚Ρ€ΠΎΠΉΠ½Ρ‹ΠΉ, Ρ…ΠΎΡ€ΠΎΡˆΠΎ структурированный ΠΊΠΎΠ΄ Π»Π΅Π³ΠΊΠΎ читаСтся и быстро дорабатываСтся. Но рСдко удаётся сразу ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΈΠΌ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΠΏΠ΅ΡˆΠ°Ρ‚, в процСссС ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ трСбования ΠΊΒ Π·Π°Π΄Π°Ρ‡Π΅, тСстировщики находят Π±Π°Π³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ быстро ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ, ΠΈΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ срочныС Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ, и их приходится Π΄Π΅Π»Π°Ρ‚ΡŒ второпях.

Π’Β Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π΄Π°ΠΆΠ΅ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ структурированный исходник становится бСспорядочным и нСпонятным. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρ‹ Π·Π½Π°ΡŽΡ‚, ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ Π·Π°Π²ΡΠ·Π½ΡƒΡ‚ΡŒ в этом хаосС. ΠŸΡ€ΠΈΡ‡Ρ‘ΠΌ Π½Π΅Π²Π°ΠΆΠ½ΠΎ, Ρ‡ΡƒΠΆΠΎΠΉ это ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ собствСнный.

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ всС эти ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, дСлаСтся Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Β Π½ΠΎΠ²ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΎΠ½Β Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹:

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

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

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π΄Π°ΠΆΠ΅ идСальная ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° со врСмСнСм Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‰Π΅Π³ΠΎ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ участки ΠΊΠΎΠ΄Π°.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π½Π΅Β Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, но и для Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π΅Π³ΠΎ Π΄ΠΎΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ. ΠŸΠ»ΠΎΡ…ΠΎ, Ссли Π΅ΠΌΡƒ придётся нСдСлю Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ в исходниках, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Β ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ нСсколько строк. Π˜Β Π½Π΅Β ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ этим Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ ΠΎΠΊΠ°ΠΆΠ΅Ρ‚Π΅ΡΡŒ вы сами.

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Β β€” нС оптимизация, хотя ΠΈΒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ с нСю связан. Часто Π΅Π³ΠΎ проводят ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ с оптимизациСй, поэтому понятия каТутся синонимами. Но у этих процСссов Ρ€Π°Π·Π½Ρ‹Π΅ Ρ†Π΅Π»ΠΈ.

ЦСль ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈΒ β€” ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π°Β Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°Β β€” ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ понятности ΠΊΠΎΠ΄Π°. ПослС ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ исходный ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ слоТнСС для понимания.

ПослС Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ быстрСС, Π½ΠΎΒ Π³Π»Π°Π²Π½ΠΎΠ΅Β β€” Π΅Ρ‘Β ΠΊΠΎΠ΄ становится ΠΏΡ€ΠΎΡ‰Π΅ и понятнСС.

ΠŸΡ€ΠΈΠ·Π½Π°ΠΊΠΈ, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π°Π·Ρ€Π΅Π»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Β Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅:

  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π½ΠΎΒ Π΄Π°ΠΆΠ΅ нСбольшиС Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ сильно Π·Π°Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· приходится Π΄ΠΎΠ»Π³ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ Π²Β ΠΊΠΎΠ΄Π΅.
  • Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ постоянно Π½Π΅Β ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π΅ΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ Π½Π°Β Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ β€œΡ‚Π°ΠΌ Π½Π°Π΄ΠΎ Π²Π½Π°Ρ‡Π°Π»Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡβ€.
  • ΠžΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ измСнСния приходится Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π²Β Ρ€Π°Π·Π½Ρ‹Π΅ мСста тСкста ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π½ΡƒΠΆΠ½ΠΎ срочно Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ, ΠΈΠ½Π°Ρ‡Π΅ ΠΎΠ½Β Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈΒ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΡΡ‚ΡŒ внСсСниС ΠΏΡ€Π°Π²ΠΎΠΊ.

Π’ΠΎΠΎΠ±Ρ‰Π΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ постоянно. Π”Π΅Π»Π°ΠΉΡ‚Π΅ Π΅Π³ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, послС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ помСняли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈΒ ΡƒΠ±Π΅Π΄ΠΈΠ»ΠΈΡΡŒ, Ρ‡Ρ‚ΠΎ всё Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. НапримСр, Ссли Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΌΠ΅Ρ‚ΠΎΠ΄, класс ΠΈΠ»ΠΈ объявили Π½ΠΎΠ²ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ.

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Β β€” это малСнькиС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°. Π§ΠΈΡΡ‚ΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ всё, Π½ΠΎΒ Π²Β ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ эти ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹:

  1. ΠœΡ‘Ρ€Ρ‚Π²Ρ‹ΠΉ ΠΊΠΎΠ΄. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠ»ΠΈ класс большС Π½Π΅Β ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ: трСбования ΠΊΒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ измСнились, Π½ΠΎΒ ΠΊΠΎΠ΄ нС почистили. ΠœΡ‘Ρ€Ρ‚Π²Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒΡΡ и в слоТной условной конструкции, Π³Π΄Π΅ какая-Ρ‚ΠΎ Π²Π΅Ρ‚ΠΊΠ° Π½ΠΈΠΊΠΎΠ³Π΄Π° нС исполняСтся ΠΈΠ·-Π·Π° ошибки ΠΈΠ»ΠΈ измСнСния Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ. Π’Π°ΠΊΠΈΠ΅ элСмСнты ΠΈΠ»ΠΈ участки тСкста Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ.
  2. Π”ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Один ΠΈΒ Ρ‚ΠΎΡ‚ ΠΆΠ΅Β ΠΊΠΎΠ΄ выполняСт ΠΎΠ΄Π½ΠΎ и то ТС дСйствиС Π²Β Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… мСстах ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ВынСситС эту Ρ‡Π°ΡΡ‚ΡŒ Π²Β ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.
  3. ИмСна ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ классов Π½Π΅Β ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ ΠΈΡ…Β Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. ИмСна Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠΎΠ±Ρ‰Π°Ρ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ элСмСнт ΠΊΠΎΠ΄Π° сущСствуСт, Ρ‡Ρ‚ΠΎ ΠΎΠ½Β Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈΒ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. Если Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ намСрСния программиста нСпонятны Π±Π΅Π· коммСнтария,Β β€” Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΡŒΡ‚Π΅.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π½: totalScoreΒ β€” пСрСмСнная, ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰Π°Ρ ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ счёт Π²Β ΠΈΠ³Ρ€Π΅, maxWeightΒ β€” ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉΒ Π²Π΅Ρ. Для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΒ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π³Π»Π°Π³ΠΎΠ»Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: saveScore ()Β β€” ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ счСт, setSize ()Β β€” Π·Π°Π΄Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€, getSpeed ()Β β€” ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ.

  4. Блишком Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ этих элСмСнтов — 2-3 дСсятка строк. Если получаСтся большС, Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ на нСсколько ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… ΠΈΒ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΎΠ΄Π½Ρƒ ΠΎΠ±Ρ‰ΡƒΡŽ. ΠŸΡƒΡΡ‚ΡŒ малСнькиС Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΠΏΠΎΒ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, а общая функция ΠΈΡ…Β Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚.
  5. Блишком Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ классы. Во ТС самоС. ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Π°Ρ Π΄Π»ΠΈΠ½Π° класса — 20–30 строк. Π Π°Π·Π±Π΅ΠΉΡ‚Π΅ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ класс на нСсколько ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… ΠΈΒ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΈΡ…Β ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π²Β ΠΎΠ΄ΠΈΠ½ ΠΎΠ±Ρ‰ΠΈΠΉ класс.
  6. Блишком Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ список ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°. Они Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°ΠΏΡƒΡ‚Ρ‹Π²Π°ΡŽΡ‚, Π°Β Π½Π΅Β ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚. Если всС эти ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½Ρ‹, вынСситС ΠΈΡ…Β Π²Β ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ структуру ΠΈΠ»ΠΈ класс с понятным ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π°Β Π²Β Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°ΠΉΡ‚Π΅ ссылку Π½Π°Β Π½Π΅Π³ΠΎ.
  7. Много ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π². ΠŸΠ»ΠΎΡ…ΠΎΠΉ ΠΊΠΎΠ΄ часто прикрываСтся ΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ коммСнтариями. Если почувствовали ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ участок ΠΊΠΎΠ΄Π°, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ сначала Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΒ Ρ‚Π°ΠΊ стал понятным. БСсполСзныС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π·Π°Π³Ρ€ΠΎΠΌΠΎΠΆΠ΄Π°ΡŽΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π°Β ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ ΠΈΒ Π½Π΅Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ вводят Π²Β Π·Π°Π±Π»ΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅.

ПослС ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΡ€Π°Π²ΠΊΠΈ посмотритС на сосСдниС участки ΠΊΠΎΠ΄Π°: Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΡ…Β Ρ‚ΠΎΠΆΠ΅ стоит ΠΏΠΎΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΈΒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ понятнСС. Π˜Β Π½Π°Β Ρ‚Π΅Β ΡƒΡ‡Π°ΡΡ‚ΠΊΠΈ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π°Π²Π½ΠΎ Π½Π΅Β Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ,Β β€” ΠΎΠ½ΠΈ ΡƒΠΆΠ΅ ΠΌΠΎΠ³Π»ΠΈ ΡΡ‚Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌΠΈ.

ПослС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π°Π΄ΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, поэтому ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΡŒΡ‚Π΅ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ тСстов: ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ…. ИзмСнСния ΠΏΡ€ΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅ вносятся нСбольшиС, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ошибки ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π»Π΅Π³ΠΊΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΈΒ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ.

Код чистят и на этапС тСстирования, ΠΊΠΎΠ³Π΄Π° всё ΡƒΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²ΠΎ и провСряСтся Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ΡƒΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ выполняСт трСбования тСстировщиков ΠΈΒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³.

Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π²Π°ΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΈΒ Π΄Π΅Π»Π°ΡŽΡ‚ Π΅Π³ΠΎ элСмСнтом Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ОсобоС мСсто ΠΎΠ½Β Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π²Β ΡΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° программисты ΠΏΠΎΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎΒ ΠΏΠΈΡˆΡƒΡ‚ ΠΊΠΎΠ΄ ΠΈΒ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ тСсты, то проводят Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ написанного.

НС страдайтС ΠΏΠ΅Ρ€Ρ„Π΅ΠΊΡ†ΠΈΠΎΠ½ΠΈΠ·ΠΌΠΎΠΌ! Если Π²Ρ‹Β ΠΏΠΎΠΏΡ€Π°Π²ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ кусочСк ΠΊΠΎΠ΄Π°, Π½Π΅Β Π½Π°Π΄ΠΎ ΠΏΠ΅Ρ€Π΅Ρ‚Ρ€ΡΡ…ΠΈΠ²Π°Ρ‚ΡŒ всю ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, разыскивая, Ρ‡Ρ‚ΠΎ Π΅Ρ‰Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ. Π‘Ρ‚Ρ€Π΅ΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΊΒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²Ρƒ Π²Π΅Ρ‡Π½ΠΎ, Π½ΠΎΒ Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· Ρ„Π°Π½Π°Ρ‚ΠΈΠ·ΠΌΠ°.

ΠœΡ‹Β Π²ΡΡ‘-Ρ‚Π°ΠΊΠΈ мСняСм Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉΒ ΠΊΠΎΠ΄. Π’ΡƒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅Β Ρ‚ΠΎΠ»ΡŒΠΊΠΎ всё ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ, но и сильно Π½Π°ΠΏΠΎΡ€Ρ‚Π°Ρ‡ΠΈΡ‚ΡŒ. НСбрСТный Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π°Β Π΄Π½ΠΈ ΠΈΒ Π½Π΅Π΄Π΅Π»ΠΈ.

Опасно Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ нС постоянно, а от случая ΠΊΒ ΡΠ»ΡƒΡ‡Π°ΡŽ. Π‘ΠΎΠ±Π»Π°Π·Π½ сильно ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ становится нСвыносимым. Вы всё Π³Π»ΡƒΠ±ΠΆΠ΅ Π·Π°ΠΊΠ°ΠΏΡ‹Π²Π°Π΅Ρ‚Π΅ΡΡŒ Π²Β ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈΒ ΠΊΠΎΠΏΠ°Π΅Ρ‚Π΅ сСбС яму, Π²Β ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π»Π΅Π³ΠΊΠΎ ΡƒΠ²ΡΠ·Π½ΡƒΡ‚ΡŒ.

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΡŒΡ‚Π΅ постоянно ΠΈΒ ΠΏΠΎΒ Ρ‡ΡƒΡ‚ΡŒ-Ρ‡ΡƒΡ‚ΡŒ.

Иногда Π±Ρ‹Π²Π°ΡŽΡ‚ злоупотрСблСния: Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ способом саботаТа, ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΊΠΎΠΉ, ΡΒ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΡ‚ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π²Π°ΠΆΠ½Ρ‹Π΅ Ρ€Π΅Π»ΠΈΠ·Ρ‹ ΠΈΒ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ…Β Ρ„ΠΈΡ‡.

Но всё Ρ€Π°Π²Π½ΠΎ нСльзя ΠΏΡ€Π΅Π½Π΅Π±Ρ€Π΅Π³Π°Ρ‚ΡŒ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π°, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Π»ΡƒΡ‡ΡˆΠΈΠΉ способ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π²Β Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

Π₯ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ эффСктивныС прилоТСния ΡΒ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ количСством ошибок, чистым и понятным ΠΊΠΎΠ΄ΠΎΠΌ? ΠΠ°Β Π½Π°ΡˆΠΈΡ… курсах ΡƒΡ‡Π°Ρ‚ Π½Π΅Β Ρ‚ΠΎΠ»ΡŒΠΊΠΎ языкам программирования, но и процСссу Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ, Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈΒ Π΄Π΅Π±Π°Π³Ρƒ.

Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅:

Vkontakte

Twitter

Telegram

Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ссылку

Β«Π‘Π±Π΅Ρ€Β» прСдставил ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Π° ChatGPT ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ GigaChat
24 Π°ΠΏΡ€ 2023

РоссийскиС ΡƒΡ‡Ρ‘Π½Ρ‹Π΅ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„Π΅Π½ΠΎΠΌΠ΅Π½ Π­Π»ΡŒβ€‘ΠΠΈΠ½ΡŒΠΎ ΡΒ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нСйросСти
24 Π°ΠΏΡ€ 2023

Adobe Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ Π½Π΅ΠΉΡ€ΠΎΠ½ΠΊΡƒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с видСо Π²Β Premiere Pro ΠΈΒ After Effects
19 Π°ΠΏΡ€ 2023

ΠŸΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ ΡΡ‚Π°Ρ‚ΡŒΡ?

Π”Π°

Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅, Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ ΠΈ риски ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ исходного ΠΊΠΎΠ΄Π°

Π‘Ρ‚Π°Ρ€ΡˆΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΠ» Π½Π° связь нСдСлю, Π° ΠΊΠΎΠ³Π΄Π° появился Π² сСти, сказал, Ρ‡Ρ‚ΠΎ всё это врСмя занимался Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ΠΎΠΌ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρ‹ тратят ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° этот процСсс, Π½ΠΎ Ρ‚Π°ΠΊ Π»ΠΈ ΠΎΠ½ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ? Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ΅Π½ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³

Когда программисты ΠΏΠΈΡˆΡƒΡ‚ ΠΊΠΎΠ΄, ΠΎΠ½ΠΈ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ. Иногда происходит Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π΅Π΅ Π½ΡƒΠΆΠ½ΠΎ Π² ΠΎΡ‡Π΅Π½ΡŒ сТатыС сроки. ΠžΡ‚ спСшки страдаСт Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ программист, Π½ΠΎ ΠΈ ΠΊΠΎΠ΄: ΠΎΠ½ становится слоТным, Ρ…Π°ΠΎΡ‚ΠΈΡ‡Π½Ρ‹ΠΌ ΠΈ нСструктурированным.

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

АмСриканский программист ΠΈ Π°Π²Ρ‚ΠΎΡ€ мноТСства ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО ΠœΠ°Ρ€Ρ‚ΠΈΠ½ Π€Π°ΡƒΠ»Π΅Ρ€ опрСдСляСт Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠ°ΠΊ Β«ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ структуры ПО Π±Π΅Π· измСнСния Π΅Π³ΠΎ наблюдаСмого повСдСния, ΠΏΡ€ΠΈΠ·Π²Π°Π½Π½ΠΎΠ΅ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π΅ΡˆΠ΅Π²ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽΒ». Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ части ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ стали понятнСС, Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½Π΅Π΅, Π° Π΅Ρ‰Π΅ β€” Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π§Ρ‚ΠΎ Π½Π΅ являСтся Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ΠΎΠΌ

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° сильно Ρ€Π°Π·ΠΌΡ‹Ρ‚ΠΎ. Иногда Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ процСссы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ связаны с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ структуры ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΏΠΎ сути ΠΈΠΌ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹.

Π”Π΅Π±Π°Π³Π³ΠΈΠ½Π³

ΠŸΡ€ΠΈ написании ΠΊΠΎΠ΄Π° ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ ошибки, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ пСрСстаСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, проводят Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³ β€” это процСсс поиска ошибок Π² ΠΊΠΎΠ΄Π΅ ΠΈ ΠΈΡ… устранСния.
ОсновноС Π΅Π³ΠΎ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ. ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Π½ΠΈΠ΅ участка ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π΅Π²Π΅Ρ€Π½ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΏΡ€ΠΎΠ²ΠΎΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΡŒ Π² Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅ этого ΠΊΠΎΠ΄Π°.

Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ПО

Как ΠΈ Π΄Π΅Π±Π°Π³Π³ΠΈΠ½Π³, ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ПО Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ повСдСния ΠΊΠΎΠ΄Π°. НапримСр, ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ситуация, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Π½ΠΎΠ²ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ (Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ . jpg, Π½ΠΎ ΠΈ .png). Π’ этом случаС появляСтся Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Ρ‚Π°ΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. Если прСдыдущая структура позволяла Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΡ‚Π°Ρ‚ΡŒΡΡ ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΉ.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ

Под ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΊΠΎΠ΄Π° Ρ‡Π°Ρ‰Π΅ всСго ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠΉ памяти ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π’ΠΎ врСмя ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ПО часто мСняСтся структура ΠΊΠΎΠ΄Π°, Π½ΠΎ сохраняСтся Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ β€” Π΄ΠΎΡ€ΠΎΠ³ΠΎΠΉ для бизнСса процСсс. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Ρƒ, Π½ΠΎ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ Π½Π΅ ΡƒΡΠΊΠΎΡ€ΡΡŽΡ‚ ΠΊΠΎΠ΄. ВмСсто этого ΠΎΠ½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ. Π”Π°Π½Π½Ρ‹ΠΉ процСсс Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ Π΄Π΅Π½Π΅Π³ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ, Π½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ»ΠΈ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ тратится Π½Π° Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³? ΠžΡ‚Π²Π΅Ρ‚: Π΄Π°, ΠΌΠΎΠΆΠ½ΠΎ.

Π•Ρ‰Π΅ Π΄ΠΎ написания Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎΠ± Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°. Часто ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, программисты ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‚ Π΅Π΅ структуру. Π­Ρ‚ΠΎ сильно ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π² создании качСствСнного ΠΊΠΎΠ΄Π° ΠΈ позволяСт Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ мСньшС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Π΅Π³ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ Π² дальнСйшСм.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΡ€ΠΎΡ‰Π΅ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ Π½Π°Π΄ структурой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° находится Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, Ρ‡Π΅ΠΌ Π² Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ участвуСт Π² бизнСс-процСссах.

Когда Π±Π΅Π· Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π½Π΅ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ

ΠŸΠ»Π°Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³

Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ПО ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚ внСсСниС большого количСства ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡƒΠΆΠ΅ написанный ΠΊΠΎΠ΄. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ситуация, ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ становится слоТно быстро Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ происходит Π² Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠ»ΠΎΡ…ΠΈΠΌ Π·Π½Π°ΠΊΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с вашим ΠΊΠΎΠ΄ΠΎΠΌ, часто ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ ΠΊ Π²Π°ΠΌ ΠΈ просят пояснСний.

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

Когда ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π΅Ρ‚Π΅ΡΡŒ с Ρ‚Π°ΠΊΠΈΠΌΠΈ ситуациями, Π»ΡƒΡ‡ΡˆΠ΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ β€” Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ врСмя Π½Π° рСгулярноС ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°. НСкоторым ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ это скучная ΠΈ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ нуТная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°, Π½ΠΎ ΠΎΠ½Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π² дальнСйшСм ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ сил.

По ΠΌΠ΅Ρ€Π΅ нСобходимости *

* Когда добавляСтся новая функция ΠΈ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΏΡ€ΠΈ Ρ€Π°Π·Π±ΠΎΡ€Π΅ ΠΊΠΎΠ΄Π°.

Часто Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сопровоТдаСтся ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ части ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв Π»ΡƒΡ‡ΡˆΠΈΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ являСтся максимальная интСграция Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² старый, Π° Π½Π΅ написаниС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… кусков Π² ΠΎΡ‚Ρ€Ρ‹Π²Π΅ ΠΎΡ‚ основной структуры.

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

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅ΡˆΠΈΡ‚ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³

БущСствуСт мноТСство ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ΅Π½ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³. НиТС пСрСчислСны Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ….

ΠœΠ΅Ρ€Ρ‚Π²Ρ‹ΠΉ ΠΊΠΎΠ΄

Если Π΅ΡΡ‚ΡŒ участки ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΠΈΠ³Π΄Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, Ρ‚ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΈ навСрняка ΠΈΡ… стоит ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, стоит ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚Π°ΠΊΠΈΡ… ΠΆΠ΅.

Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ тысячи строк, Π° ΠΌΠ΅Ρ€Ρ‚Π²Ρ‹ΠΉ ΠΊΠΎΠ΄ захламляСт ΠΈΡ… ΠΈ вносит Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρƒ.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΄Ρ€ΡƒΠ³ΠΈΠ΅ программисты ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ своС врСмя Π½Π° Π΅Π³ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΈ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, хотя Π² этом Π½Π΅Ρ‚ смысла.

ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠΉΡΡ ΠΊΠΎΠ΄

НаличиС ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… мСстах Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅ Π² Π΅Π³ΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ ошибкам, ΠΊΠΎΠ³Π΄Π° Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС ΠΊΠΎΠ΄ помСнялся, Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ β€” остался Π±Π΅Π· измСнСния.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΡ… ситуаций, Π½ΡƒΠΆΠ½ΠΎ ΡΡ‚Π°Ρ€Π°Ρ‚ΡŒΡΡ Π½Π΅ Π΄ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ дублирования ΠΊΠΎΠ΄Π°. Π‘Π°ΠΌΡ‹ΠΉ простой ΠΌΠ΅Ρ‚ΠΎΠ΄ β€” ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² ΠΎΠ΄Π½Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.

Имя элСмСнта ΠΊΠΎΠ΄Π° Π½Π΅ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, которая распространСна Ρƒ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ²: Π½Π°Π·Π²Π°Π½ΠΈΠ΅ элСмСнта ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π΅ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π΅Π³ΠΎ значСния. НапримСр, пСрСмСнная ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ±Ρ‰Π΅Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΎΠ±ΡƒΠΊΠ²Π΅Π½Π½ΠΎΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ сильно услоТняСт Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°, Π° ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΈ Π΅Π³ΠΎ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ.

Π”ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°


...
def new_item(self, a):
   if self.b.n + 1 <= self.b.mn and self.b.w + a.w < self.b.mw:
       self.b.new_item(a)
...

ПослС Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°


...
def add_item_to_backpack(self, item):
   has_place_ = self.backpack_.n_items_ + 1 <= self.backpack_.max_n_items_
   can_carry_ = self.backpack_.weight_ + item.weight < self.backpack_.max_weight_
   if has_place_ and can_carry_:
       self.backpack_.add_new_item(item)
...

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π”ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ всС согласятся: Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ случаС ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ понятный.

Π§Ρ€Π΅Π·ΠΌΠ΅Ρ€Π½ΠΎ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

Когда Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° класса Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ нСсколько дСсятков строк, это ΠΏΠΎΠ²ΠΎΠ΄ Π·Π°Π΄ΡƒΠΌΠ°Ρ‚ΡŒΡΡ Π½Π°Π΄ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°.

Основная идСя ΠΌΠ΅Ρ‚ΠΎΠ΄Π° β€” Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ, которая ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Π° Π² Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠΈ. Если это Π½Π΅ Ρ‚Π°ΠΊ, Ρ‚ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, удачная идСя β€” Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π° нСсколько, Ссли это повысит Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°, ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Π½Π°Π΄ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ систСмы классов.

Блишком Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ классы

НС стоит ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ класс ΠΎΠ±ΠΈΠ»ΠΈΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠΎΠ»Π΅ΠΉ. Π’ ΠΎΡ‡Π΅Π½ΡŒ большом классС слоТно ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΏΡƒΡ‚Π°Ρ‚ΡŒΡΡ.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, слишком ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅ΠΉ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΏΡƒΡ‚Π°Ρ‚ΡŒ программиста ΠΈ ΡƒΡΠ»ΠΎΠΆΠ½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρƒ. По возмоТности ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ класса Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ класс.

Π˜Π·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ количСство ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²

ΠŸΡ€ΠΈΠ·Π½Π°ΠΊ пСрСуслоТнСнного ΠΊΠΎΠ΄Π° β€” программист добавляСт слишком ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

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

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΏΡ€ΠΎΠΊ

Часто ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠ΄Π° программисты ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ ΠΏΡ€Π΅Π΄ΡƒΠ³Π°Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ поэтому Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ участки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π² дальнСйшСм.

Π’ ΠΊΠ½ΠΈΠ³Π΅ Β«Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄Β» Π‘Ρ‚ΠΈΠ²Π° МакконнСлла это называСтся Β«ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΏΡ€ΠΎΠΊΒ». Автор ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΌΠ½Π΅Π½ΠΈΠ΅ экспСртов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ Π·Π°ΡΠ²Π»ΡΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ простой ΠΈ понятный ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ΅Π½ здСсь ΠΈ сСйчас.

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

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°

Red-Green-Refactor

Одной ΠΈΠ· популярных ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° являСтся Red-Green-Refactor. НаписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ происходит Π² Ρ‚Ρ€ΠΈ этапа:

  1. Red. НаписаниС тСстов, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π°Π΄Π°Ρ‡Π° Π±Ρ‹Π»Π° Ρ€Π΅ΡˆΠ΅Π½Π°.
  2. Green. НаписаниС минимального ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ тСсты ΠΈ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ.
  3. Refactor. Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ β€” Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π²Ρ‹ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ структуру ΠΊΠΎΠ΄Π° ΠΈ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Π΅ участки.

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

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

Визуализация ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ Red-Green-Refactor

Абстракция

Данная Π³Ρ€ΡƒΠΏΠΏΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. Π•Π΅ ΡΡƒΡ‚ΡŒ β€” Π² использовании Π½ΠΎΠ²Ρ‹Ρ… абстракций для объСдинСния ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠΎΠ»Π΅ΠΉ ΠΈΠ»ΠΈ, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, выноса ΠΈΡ… Π² спСцифичныС классы.

Рассмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΊΠΎΠ΄Π° ΠΈΠ· ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ ΠΈΠ³Ρ€Ρ‹. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π΅ΡΡ‚ΡŒ Π΄Π²Π° класса β€” Warrior ΠΈ Archer, β€” Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‚ΡΡ свойства name ΠΈ heath_points. Π’ΠΎΠ³Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ создаст Π½ΠΎΠ²Ρ‹ΠΉ класс Unit, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ унСсСт свойства name ΠΈ heath_points, Π° спСцифичныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ has_shield ΠΈ n_arrows оставит Π² ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… классах.

Π”ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°


class Warrior():
...
    @property
    def name(self):
        return self._my_name

    @property
    def heath_points(self):
        return self._hp

    @has_shield.setter
    def has_shield(self, shield):
	  if shield and not self._has_shield:
	     self._has_shield = True
	  ...
...

class Archer():
...
    @property
    def name(self):
        return self._my_name

    @property
    def heath_points(self):
        return self._hp

    @n_arrows.setter
    def n_arrows(self, number):
        if number < self._max_arrows:
	      self._n_arrows = number
...

ПослС Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°


class Unit():
...
    @property
    def name(self):
        return self._my_name

    @property
    def heath_points(self):
        return self. _hp
... 

class Warrior(Unit):
...
    @has_shield.setter
    def has_shield(self, shield):
	  if shield and not self._has_shield:
		self._has_shield = True
	  ...
...

class Archer(Unit):
...
    @n_arrows.setter
    def n_arrows(self, number):
	  if number < self._max_arrows:
		self._n_arrows = number
...

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ случаС, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ вынСсСт ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ поля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, ΠΈΠ· ΠΎΠ±Ρ‰Π΅Π³ΠΎ класса.

ЀрагмСнтация ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²

Π­Ρ‚Π° Π³Ρ€ΡƒΠΏΠΏΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π° Π½Π° ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° класса для выдСлСния ΠΈ подчСркивания основной ΠΈΠ΄Π΅ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈΠ·Π²Π°Π½ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ.

Π•ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚Π΅Ρ…Π½ΠΈΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°. Рассмотрим нСсколько ΠΈΠ· Π½ΠΈΡ… Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΠ³Ρ€Ρ‹ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π°:

  • Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² случаях, ΠΊΠΎΠ³Π΄Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ сразу нСсколько Π·Π°Π΄Π°Ρ‡. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΠ· Π·Π°Π΄Π°Ρ‡ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄.

Π”ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°


class Unit():
...
    def go_forward_and_left(self, steps):
        self.coordinates.y += steps
        self.coordinates.x -= steps
...

ПослС Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°


class Unit():
...
    def go_forward(self, steps):
        self.coordinates.y += steps

    def go_left(self, steps):
        self.coordinates.x -= steps
...
  • Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ слоТно для восприятия. НапримСр, условиС ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ сравнСний ΠΈ нСпонятно с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ взгляда.

Π”ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°


class Archer(Unit):
...
    def attack(self, enemy):
        if (not self.has_bow or self.n_arrows < 1 or \\
            Unit.distance(enemy) > 5.0 or \\
            Unit.distance(enemy) < 1.0) and \\
            (not self.has_dagger or Unit.distance(enemy) > 1.0):
            # do not attack
        . ..
...

ПослС Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°


class Archer(Unit):
...
    def attack(self, enemy):
        can_shoot = self.has_bow and self.n_arrows > 0
        in_shoot_range = Unit.distance(enemy) <= 5.0 and \\
                         Unit.distance(enemy) > 1.0
        can_use_dagger = self.has_dagger and \\
				  Unit.distance(enemy) <= 1.0

        if not (can_shoot and in_shoot_range) and not can_use_dagger:
           # do not attack
        ...
...

Риски Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ β€” слоТный процСсс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΡ€Π΅Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ аккуратности. Основная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ измСнСния вносятся Π² работоспособный ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΆΠ΅ выполняСт ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½Π΅. А это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ шанс Π½Π΅ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ. И это ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Π½ΠΎΠ²Ρ‹ΠΌ ошибкам.

Π•ΡΡ‚ΡŒ простыС ΠΏΡ€Π°Π²ΠΈΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ позволят ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ риски Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒ. ΠžΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ исходный ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄ исправлСниями ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ систСмой контроля вСрсий.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, слСдуСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ всСгда ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ, Ссли Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ пошло Π½Π΅ Ρ‚Π°ΠΊ. А Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ тСсты: ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ошибки Π½Π° Ρ€Π°Π½Π½Π΅ΠΉ стадии

Π’Π΅Π±ΠΈΠ½Π°Ρ€Ρ‹

ΠšΠΎΡ€ΠΎΡ‚ΠΊΠΎ ΠΎ Π³Π»Π°Π²Π½ΠΎΠΌ

Π’ ΠΈΡ‚ΠΎΠ³Π΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ эффСктивных способов ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΠΈ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Π²Π°ΠΆΠ½Ρ‹Π΅ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ процСссы, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠΎΠ΄Π° ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π² порядкС β€” Π·Π½Π°Ρ‡ΠΈΡ‚ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π½Π΅Ρ€Π²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ быстро Π½Π°ΠΉΡ‚ΠΈ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π’Ρ‹ΡˆΠ΅ ΠΌΡ‹ рассмотрСли Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ ΠΈ эффСктивны Π² Ρ€Π°Π±ΠΎΡ‚Π΅ любого Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Π§Ρ‚ΠΎΠ±Ρ‹ Π³Π»ΡƒΠ±ΠΆΠ΅ ΠΏΠΎΠ³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ Π² Ρ‚Π΅ΠΌΡƒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ½ΠΈΠ³ΠΈ ΠœΠ°Ρ€Ρ‚ΠΈΠ½Π° Π€Π°ΡƒΠ»Π΅Ρ€Π° Β«Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³. Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°Β» ΠΈ Β«Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄Β» Π‘Ρ‚ΠΈΠ²Π° МакконнСлла (Π³Π»Π°Π²Π° 24 β€” Β«Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Β»).

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ (Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π°)?

АрхитСктура прилоТСния

К

  • АлСксандр Π‘. Гиллис,
    ВСхничСский ΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒ ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³?

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ β€” это процСсс рСструктуризации ΠΊΠΎΠ΄Π° Π±Π΅Π· измСнСния Π΅Π³ΠΎ исходной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ЦСль Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° β€” ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΊΠΎΠ΄ ΠΏΡƒΡ‚Π΅ΠΌ внСсСния мноТСства Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π±Π΅Π· измСнСния внСшнСго повСдСния ΠΊΠΎΠ΄Π°.

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

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

ΠœΠ°Ρ€Ρ‚ΠΈΠ½ Π€Π°ΡƒΠ»Π΅Ρ€, ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‰ΠΈΠΉΡΡ ΠΎΡ‚Ρ†ΠΎΠΌ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, объСдинил мноТСство Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊ ΠΈΠ· индустрии Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ список Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ΠΎΠ² ΠΈ описал ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² своСй ΠΊΠ½ΠΈΠ³Π΅ Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³: ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ Π΄ΠΈΠ·Π°ΠΉΠ½Π° ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π° .

Какова Ρ†Π΅Π»ΡŒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°?

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ ΠΊΠΎΠ΄, дСлая Π΅Π³ΠΎ:

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

ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ΄Π° производится Π±Π΅Π· измСнСния ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. МногиС Π±Π°Π·ΠΎΠ²Ρ‹Π΅ срСды рСдактирования ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ простой Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π²ΠΎ всСй ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Π΅.

На этом ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½ процСсс выполнСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ΠΎΠ² ΠΊΠΎΠ΄Π°.

Когда слСдуСт Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄?

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

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

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

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

ΠšΠ°ΠΊΠΎΠ²Ρ‹ прСимущСства Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°?

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ прСимущСства:

  • ΠžΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ†Π΅Π»ΡŒ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ.
  • Π£Π»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ Ρ€Π΅ΠΌΠΎΠ½Ρ‚ΠΎΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ошибок ΠΈΠ»ΠΈ внСсСниС Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
  • БпособствуСт Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠΌΡƒ пониманию ΠΊΠΎΠ΄Π°. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΡ… ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡ‡Π΅Ρ‚Π°Ρ‚ΡŒΡΡ с ΠΊΠΎΠ΄ΠΎΠΌ, ΡƒΠΆΠ΅ находящимся Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Π΅.
  • Ѐокус остаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. НСизмСнСниС исходной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠ΄Π° Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ исходный ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π΅ потСряСт ΠΌΠ°ΡΡˆΡ‚Π°Π±Π°.

ΠšΠ°ΠΊΠΎΠ²Ρ‹ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°?

Однако Π² процСссС Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ трудности. НСкоторыС ΠΈΠ· Π½ΠΈΡ… Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚:

  • ΠŸΡ€ΠΎΡ†Π΅ΡΡ Π·Π°ΠΉΠΌΠ΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя, Ссли ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² торопится ΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π΅ Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½.
  • Π‘Π΅Π· Ρ‡Π΅Ρ‚ΠΊΠΈΡ… Ρ†Π΅Π»Π΅ΠΉ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅.
  • Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ сам ΠΏΠΎ сСбС Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ нСдостатки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для очистки ΠΊΠΎΠ΄Π° ΠΈ упрощСния Π΅Π³ΠΎ слоТности.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ выполнСния Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π°

ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π² Ρ€Π°Π·Π½Ρ‹Ρ… случаях. НСкоторыС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚:

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

Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π°

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ:

  • План Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π½Π°ΠΉΡ‚ΠΈ врСмя для ΠΎΡ‚Π½ΠΈΠΌΠ°ΡŽΡ‰Π΅ΠΉ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ.
  • Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ сначала. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это ΠΏΠ΅Ρ€Π΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ тСхничСский Π΄ΠΎΠ»Π³.
  • Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ нСбольшими шагами. Π­Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь Π½Π° Ρ€Π°Π½Π½ΠΈΡ… стадиях процСсса, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π½Π°ΠΉΡ‚ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ошибки, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ бизнСс-запросы.
  • Π‘Ρ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄ собой Ρ‡Π΅Ρ‚ΠΊΠΈΠ΅ Ρ†Π΅Π»ΠΈ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ объСм ΠΈ Ρ†Π΅Π»ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° Ρ€Π°Π½Π½Π΅ΠΉ стадии процСсса Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠΎΠΉ домашнСго хозяйства, Π° Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ часто. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ΠΎΠ²Ρ‹Π΅ измСнСния Π½Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄ΡƒΡ‚ ΠΊ появлСнию Π½ΠΎΠ²Ρ‹Ρ… ошибок.
  • АвтоматизируйтС Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. БрСдства Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ ΠΈ ΡƒΡΠΊΠΎΡ€ΡΡŽΡ‚ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³, Ρ‚Π΅ΠΌ самым ΠΏΠΎΠ²Ρ‹ΡˆΠ°Ρ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ.
  • Π˜ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ Π΄Π΅Ρ„Π΅ΠΊΡ‚Ρ‹ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ. Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для устранСния нСдостатков ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. УстранСниС Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΎΠΊ ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ слСдуСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.
  • Π Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ с ΠΊΠΎΠ΄ΠΎΠΌ. ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠ΄, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π΅Π³ΠΎ процСссы, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ элСмСнты.
  • Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³, исправлСниС ΠΈ рСгулярноС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅. Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ приносит Π½Π°ΠΈΠ±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΎΡ‚Π΄Π°Ρ‡Ρƒ ΠΎΡ‚ инвСстиций, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π²Π°ΠΆΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Π½Π΅ трСбуя слишком ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ усилий.
  • Π‘ΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΡŒΡ‚Π΅ΡΡŒ Π½Π° Π΄Π΅Π΄ΡƒΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π°. Π”ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ услоТняСт ΠΊΠΎΠ΄, увСличивая объСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ расходуя систСмныС рСсурсы.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ провСсти Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π° Π±Π΅Π· Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ процСсса развСртывания .

ПослСднСС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅: ΡΠ΅Π½Ρ‚ΡΠ±Ρ€ΡŒ 2021 Π³.


ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ О Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅

  • Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΏΠΎ основам Agile: Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Agile
  • Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈΠ»ΠΈ пСрСписываниС: Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм
  • ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ аспСкты Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для ΠΎΠ±Π»Π°ΠΊΠ°
  • ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚Π° Π² микросСрвисы
  • ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π²Π°ΠΌ слСдуСт Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ, Π° Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ваш ΠΊΠΎΠ΄

ΠšΠΎΠΏΠ½ΠΈΡ‚Π΅ Π³Π»ΡƒΠ±ΠΆΠ΅ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

  • 5 способов ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚Π½Ρ‹Ρ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€

    Автор: ΠšΡ€ΠΈΡ Π’ΠΎΡ†Ρ†ΠΈ

  • Π“Π»Π°Π²Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ Sourcery: Π΄Π°Π²Π°ΠΉΡ‚Π΅ сдСлаСм Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π° постоянным

    Автор: Адриан Π‘Ρ€ΠΈΠ΄ΠΆΡƒΠΎΡ‚Π΅Ρ€

  • ПониманиС Π·Π°ΠΏΠ°Ρ…ΠΎΠ² ΠΊΠΎΠ΄Π° ΠΈ ΠΊΠ°ΠΊ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ

    Автор: Π”ΠΆΠΎΠΉΠ΄ΠΈΠΏ КандТилал

  • Как ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ тСхничСским Π΄ΠΎΠ»Π³ΠΎΠΌ ΠΈ ΡΠΎΠΊΡ€Π°Ρ‰Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² Agile

    Автор: Π”ΠΆΠΎΠΉΠ΄ΠΈΠΏ КандТилал

ΠšΠ°Ρ‡Π΅ΡΡ‚Π²ΠΎ ПО


  • Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€ рСгрСссионных тСстов

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


  • Как ΡΠ±Π°Π»Π°Π½ΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π² Ρ„ΠΈΠ½Ρ‚Π΅Ρ…-тСстировании

    ИспользованиС Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΈ тСстировании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, Π½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ остороТны, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ ΡƒΠ³Ρ€ΠΎΠ·Ρƒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Π¨Π΅ΡΡ‚ΡŒ ядСр…


  • ВСстовыС Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ для ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ тСстирования ΠΊΠΎΠ΄Π° Python

    ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ΅ тСстированиС являСтся Π²Π°ΠΆΠ½Ρ‹ΠΌ аспСктом Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Python для ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ тСстирования, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ прСимущСства Python…

ΠžΠ±Π»Π°Ρ‡Π½Ρ‹Π΅ вычислСния


  • ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° ΠΈ ограничСния Google Cloud Recommender

    Расходы Π½Π° ΠΎΠ±Π»Π°ΠΊΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ·-ΠΏΠΎΠ΄ контроля, Π½ΠΎ Ρ‚Π°ΠΊΠΈΠ΅ слуТбы, ΠΊΠ°ΠΊ Google Cloud Recommender, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Π°ΡˆΠΈΡ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… Π½Π°Π³Ρ€ΡƒΠ·ΠΎΠΊ. Но…


  • Zadara Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π³Π΅Π½Π΅Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π° Ρ€ΠΎΠ»ΡŒ тСхничСского Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π°

    Π™ΠΎΡ€Π°ΠΌ Новик, Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π³Π΅Π½Π΅Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ³ΠΎ стартапа Zadara, привносит Π² эту Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎΠ»Π΅Ρ‚Π½ΠΈΠΉ ΠΎΠΏΡ‹Ρ‚ руководства ИВ ΠΈ рассказываСт ΠΎ …


  • Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΡ Π½Π° основС Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π² Amazon Route 53

    Если Π²Ρ‹ рассматриваСтС Amazon Route 53 ΠΊΠ°ΠΊ способ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ, Π²ΠΎΡ‚ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ этот сСрвис.

TheServerSide.com


  • Как ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ выгорания ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π°-программиста

    Π’Ρ‹Π³ΠΎΡ€Π°Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ. Π’ΠΎΡ‚ нСсколько стратСгий, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ программисты ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ этого ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ.


  • JavaScript ΠΏΡ€ΠΎΡ‚ΠΈΠ² TypeScript: Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π°?

    TypeScript ΠΈ JavaScript β€” Π΄Π²Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π° Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡ‚ΠΈΠΌΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΊΠ°ΠΊ интСрфСйсных, Ρ‚Π°ΠΊ ΠΈ сСрвСрных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’ΠΎΡ‚…


  • Как ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π΅Π΄ΠΈΠ½ΠΎΠΉ отвСтствСнности Π² Java

    Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ модСль Π΅Π΄ΠΈΠ½ΠΎΠΉ отвСтствСнности Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Java? Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π²Π°ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ этот ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ SOLID, ΠΈ ΠΊΠ°ΠΊ …

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ ΠΊΠΎΠ΄Π°: ΠΊΠΎΠ³Π΄Π° (ΠΈ ΠΊΠΎΠ³Π΄Π° Π½Π΅Ρ‚) Π΄Π΅Π»Π°Ρ‚ΡŒ это

ВрСмя чтСния: 7 ΠΌΠΈΠ½ΡƒΡ‚

Π­Ρ‚ΠΎ гостСвая история Π‘ΠΈΠ΄Π½ΠΈ Π‘Ρ‚ΠΎΡƒΠ½Π°, писатСля ΠΈΠ· ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния iTechArt.

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π° β€” это процСсс, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния DevOps, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ очистку Ρ€Π°Π½Π΅Π΅ написанного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π±Π΅Π· измСнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎΠ΄Π° Π²ΠΎΠΎΠ±Ρ‰Π΅.

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

Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹ΠΉ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π°.

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

Когда слСдуСт Π·Π°Π΄ΡƒΠΌΠ°Ρ‚ΡŒΡΡ ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния?

Π›ΡƒΡ‡ΡˆΠ΅Π΅ врСмя для Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° β€” с Π΄ΠΎ добавлСния ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄. Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠΈ очистка Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΠ΅Ρ€Π΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ качСство самого ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, Π½ΠΎ ΠΈ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ созданиС исходного ΠΊΠΎΠ΄Π°.

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

Как ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π°: основныС ΠΏΡ€ΠΈΠ΅ΠΌΡ‹

Как ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ Ρ€Π°Π½Π΅Π΅, Π»ΡƒΡ‡ΡˆΠΈΠΉ способ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° β€” Π΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ нСбольшими шагами. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ возмоТностСй Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°.

ΠŸΡ€ΠΈ этом сущСствуСт мноТСство Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π°. НСкоторыС ΠΈΠ· самых популярных:

Red-Green-Refactor

Одним ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π° являСтся красный/Π·Π΅Π»Π΅Π½Ρ‹ΠΉ процСсс, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² Agile-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ‡Π΅Ρ€Π΅Π· тСстированиС. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ Red-Green-Refactor, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Ρ€Π°Π·Π±ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Ρ‚Ρ€ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… этапа:

  1. Β Β ΠžΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ΡΡŒ ΠΈ ΠΏΠΎΠ΄ΡƒΠΌΠ°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. [ΠšΠ ΠΠ‘ΠΠ«Π™]
  2. Β Β ΠŸΡ€ΠΎΠ²Π΅Π΄ΠΈΡ‚Π΅ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ тСстированиС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. [ЗЕЛЕНЫЙ]
  3.   ВнСсти ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ. [Π Π•Π€ΠΠšΠ’ΠžΠ ]

ΠšΡ€Π°ΡΠ½ΠΎ-Π·Π΅Π»Π΅Π½Ρ‹ΠΉ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ абстракции

Π’Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ абстракции β€” это ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² основном, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ большой объСм Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°. Абстракция Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя наслСдованиС классов, ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡŽ ΠΈ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅. ЦСль абстракции β€” ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ количСство Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ… Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ² Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅.

Одним ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² абстракции являСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ Pull-Up/Push-Down . Π­Ρ‚ΠΎ Π΄Π²Π΅ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° с участиСм классов. ΠœΠ΅Ρ‚ΠΎΠ΄ Pull-Up ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ части ΠΊΠΎΠ΄Π° Π² супСркласс, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. Push-Down Π±Π΅Ρ€Π΅Ρ‚ Π΅Π³ΠΎ ΠΈΠ· супСркласса ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π² подклассы.

ΠœΠ΅Ρ‚ΠΎΠ΄ Pull-Up/Push-Down

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ

Компоновка Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΊΠΎΠ΄Π° для ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ дублирования. Π­Ρ‚ΠΎ дСлаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… процСссов, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ извлСчСния ΠΈ встроСнныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹.

Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ ΠΈ Β«ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒΒ» Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ. Π—Π°Ρ‚Π΅ΠΌ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ пСрСмСщаСтся Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈ замСняСтся Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ этого Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°. Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ класс, интСрфСйс ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ Inline β€” это способ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ количСство Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΏΡ€ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΌ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠΈ ΠΊΠΎΠ΄Π°. Найдя всС Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΠ² ΠΈΡ… содСрТимым ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Ρ‚Π΅ΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄.

Π£ΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²

Π§Π΅ΠΌ ΡΡ‚Π°Ρ€ΡˆΠ΅ становится ΠΊΠΎΠ΄, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ искаТСнным ΠΈ слоТным ΠΎΠ½ становится. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΏΠΎΠΉΡ‚ΠΈ дальшС ΠΈ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΠΈ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ способами, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ объСдинСниС условных Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π·Π°ΠΌΠ΅Π½Ρƒ условного выраТСния ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠΎΠΌ.

Π£ΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ настройку взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ классами. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² явными ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ ΠΈ Π²Ρ‹Π·ΠΎΠ²Π°ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² β€” всС это аспСкты упрощСния.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ созданиС Π½ΠΎΠ²Ρ‹Ρ… классов ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ старыми ΠΈ Π½ΠΎΠ²Ρ‹ΠΌΠΈ классами. Когда Π² ΠΎΠ΄Π½ΠΎΠΌ классС слишком ΠΌΠ½ΠΎΠ³ΠΎ всСго происходит, ΠΏΠΎΡ€Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ этого ΠΊΠΎΠ΄Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ класс. Или, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ссли класс Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅ Ρ‚Π°ΠΊ ΡƒΠΆ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ класс ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΅Π³ΠΎ.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³

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

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ДТСссика ΠšΠ΅Ρ€Ρ€ Π΄Π°Π΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ наглядноС объяснСниС ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°:

Β«Π­Ρ‚ΠΎ ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ я Ρ…ΠΎΡ‡Ρƒ ΠΏΡ€ΠΎΠ΅Ρ…Π°Ρ‚ΡŒ 100 миль Π½Π° восток, Π½ΠΎ вмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ просто Π±Ρ€ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎ лСсу, я ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡΡŒ ΠΏΡ€ΠΎΠ΅Ρ…Π°Ρ‚ΡŒ 20 миль Π½Π° сСвСр Π΄ΠΎ шоссС ΠΈ Π·Π°Ρ‚Π΅ΠΌ я ΠΏΠΎΠ΅Π΄Ρƒ Π½Π° 100 миль Π½Π° восток со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ, Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π° ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰Π΅ΠΉ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я ΠΌΠΎΠ³ Π±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ, Ссли Π±Ρ‹ просто ΠΏΠΎΠ΅Ρ…Π°Π» прямо Ρ‚ΡƒΠ΄Π°. Когда люди ΠΏΠΎΠ΄Ρ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ вас просто ΠΈΠ΄Ρ‚ΠΈ прямо Ρ‚ΡƒΠ΄Π°, ΠΈΠ½ΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ: Β«ΠŸΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡ‚Π΅, ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚Ρƒ ΠΈ Π½Π°ΠΉΡ‚ΠΈ ΠΊΡ€Π°Ρ‚Ρ‡Π°ΠΉΡˆΠΈΠΉ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Β». ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ Π΄Π΅Π»Π°Π΅Ρ‚ это Π·Π° мСня».

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³

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

Когда Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ΅Π½ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³

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

Другая ситуация, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Ρ€Π°Π·ΡƒΠΌΠ½ΠΎ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³, β€” это ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ вывСсти ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π½Π° Ρ€Ρ‹Π½ΠΎΠΊ Π² установлСнныС сроки. Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° Ρ…ΠΎΠ΄ΡŒΠ±Ρƒ Π² ΠΏΡ€Π΅ΡΠ»ΠΎΠ²ΡƒΡ‚ΡƒΡŽ ΠΊΡ€ΠΎΠ»ΠΈΡ‡ΡŒΡŽ Π½ΠΎΡ€Ρƒ: ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ Π½Π°Ρ‡Π½Π΅Ρ‚Π΅, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ довольно ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ . Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ любого Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ кодирования ΠΈΠ»ΠΈ тСстирования Π² ΠΈ Π±Π΅Π· Ρ‚ΠΎΠ³ΠΎ сТатыС сроки ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Ρ€Π°Π·ΠΎΡ‡Π°Ρ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ расходам для вашСго ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ ΠΊΠΎΠ΄Π°

БущСствуСт нСсколько Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ ΠΏΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ ΠΊΠΎΠ΄Π°. Один ΠΈΠ· самых Ρ€Π°Π·ΡƒΠΌΠ½Ρ‹Ρ… способов ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚ΡŒΡΡ ΠΊ этому β€” ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Agile ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΅Π³ΠΎ шаг Π·Π° шагом с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ тСстированиСм. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡŽ Agile, ΡΠ²Π»ΡΡŽΡ‚ΡΡ большими сторонниками Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π°.

Π Π°Π·Π±ΠΈΠ²ΠΊΠ° процСсса Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π½Π° управляСмыС Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ своСврСмСнноС тСстированиС ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠΌ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ обновлСниям всСгда ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π±ΠΎΠ»Π΅Π΅ высокому качСству прилоТСния ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ ΠΎΠ±Ρ‰Π΅Π³ΠΎ ΠΎΠΏΡ‹Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π’ΠΎΡ‚ нСсколько Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ΅Ρ€Π΅Π΄ΠΎΠ²Ρ‹Ρ… ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊ:

Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΏΠ΅Ρ€Π΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

ВсСгда рСкомСндуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° вас просят Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ обновлСния Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π”Π°, для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° потрСбуСтся

большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π½ΠΎ это Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ количСство тСхничСских Π΄ΠΎΠ»Π³ΠΎΠ², с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π²Π°ΠΌ ΠΈΠ»ΠΈ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρƒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° придСтся ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π΅Π»ΠΎ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

Π’Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ спланируйтС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°

Одна ΠΈΠ· самых слоТных частСй Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π° β€” Π½Π°ΠΉΡ‚ΠΈ врСмя для Π΅Π³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ выполнСния.

ΠŸΠΎΠ΄ΡƒΠΌΠ°ΠΉΡ‚Π΅ ΠΎ своСй ΠΎΠ±Ρ‰Π΅ΠΉ Ρ†Π΅Π»ΠΈ. Π’Ρ‹ просто Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ? Или Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΡƒΡŽ ΡƒΠ±ΠΎΡ€ΠΊΡƒ? ΠšΠ°ΠΊΠΎΠ²Ρ‹ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠ΅ способы ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° Π² Ρ€Π°Π·ΡƒΠΌΠ½Ρ‹Π΅ сроки?

НаиболСС Π²Π°ΠΆΠ½Ρ‹ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ стал Ρ‡ΠΈΡ‰Π΅, Π½ΠΎ ΠΈ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. И ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, это Π·Π°ΠΉΠΌΠ΅Ρ‚ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‡Π΅ΠΌ Π²Ρ‹ Π΄ΡƒΠΌΠ°Π΅Ρ‚Π΅, поэтому ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΈ Π΄Π°ΠΉΡ‚Π΅ сСбС Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ запаса Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π’Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ часто

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

ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ любого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас Π΅ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ тСсты.

Π’ΠΎΠ²Π»Π΅ΠΊΠΈΡ‚Π΅ свою ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ контроля качСства

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

ИзмСнСния Π² классификации, сдСланныС Π²ΠΎ врСмя Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ сбою старых тСстов. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ созданиС Π½ΠΎΠ²Ρ‹Ρ… тСстов для ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… систСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Как ΡƒΠ³Π»ΡƒΠ±Π»Π΅Π½Π½ΠΎΠ΅, Ρ‚Π°ΠΊ ΠΈ рСгрСссионноС тСстированиС Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ усилий ΠΏΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ пострадаСт.

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

Π‘ΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΡŒΡ‚Π΅ΡΡŒ Π½Π° прогрСссС, Π° Π½Π΅ Π½Π° ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²Π΅

Π’Π΅ΡΡŒ ΠΊΠΎΠ΄ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅ становится уТасным ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.

ΠŸΡ€ΠΈΠΌΠΈΡ‚Π΅ Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€Π΅Π½Ρ‹ Π½Π° 100 ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ². Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ сСйчас Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚Π΅, станСт ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ Π² блиТайшСм Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° снова ΠΈ снова.

Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅ ΠΊΠ°ΠΊ ΠΎ постоянном ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ обслуТивания. Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ свой Π΄ΠΎΠΌ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅Π΄Π΅Π»ΠΈ, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ свой ΠΊΠΎΠ΄ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… случаях.

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³

Как ΠΈ Π² случаС с Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ процСссов, Ρ‡Π΅ΠΌ большС Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ быстрСС становится Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³.

Автоматизация Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ»ΠΈ всСх процСссов Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° становится всС Π±ΠΎΠ»Π΅Π΅ популярной срСди Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². БущСствуСт мноТСство способов ΠΈ инструмСнтов, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΌΠ΅Π½Π΅Π΅ Π±ΠΎΠ»Π΅Π·Π½Π΅Π½Π½Ρ‹ΠΌ. МногиС ΠΈΠ· Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π² ΠΊΠ½ΠΈΠ³Ρƒ ΠœΠ°Ρ€Ρ‚ΠΈΠ½Π° Π€Π°ΡƒΠ»Π΅Ρ€Π°.

Π”Π²Π΅ IDE (ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, β€” это Eclipse ΠΈ IntelliJ IDEA. Π˜Ρ‰ΠΈΡ‚Π΅ Π² блиТайшСм Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ большС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… IDE, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ярлыки Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΡƒΡŽ ΠΎΠ·Π°Π±ΠΎΡ‡Π΅Π½Π½ΠΎΡΡ‚ΡŒ Ρƒ сообщСства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π”ΡƒΠΌΠ°ΠΉΡ‚Π΅ ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅ ΠΊΠΎΠ΄Π° ΠΊΠ°ΠΊ ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠΈ чистоты ΠΈ порядка Π² Π΄ΠΎΠΌΠ΅. Когда Ρƒ вас чистый ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π΄ΠΎΠΌ, Π²Ρ‹ мСньшС испытываСтС стрСсс, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ всС ΠΏΡ€ΠΎΡ‰Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Π΄ΠΎΠΌ с Π½Π΅Π½ΡƒΠΆΠ½Ρ‹ΠΌ бСспорядком ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ…Π°ΠΎΡ‚ΠΈΡ‡Π½ΠΎΠΉ ΠΈ напряТСнной обстановкС.

Π’ΠΎ ΠΆΠ΅ самоС Π²Π΅Ρ€Π½ΠΎ ΠΈ для письмСнного ΠΊΠΎΠ΄Π°. Π’ΠΎΠ·ΡŒΠΌΠΈΡ‚Π΅ Π·Π° ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ рСгулярно ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π³Π΅Π½Π΅Ρ€Π°Π»ΡŒΠ½ΡƒΡŽ ΡƒΠ±ΠΎΡ€ΠΊΡƒ ΠΊΠΎΠ΄Π°, ΠΈ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π²ΠΎΠ·Π½Π°Π³Ρ€Π°ΠΆΠ΄Π΅Π½Ρ‹ Π»ΡƒΡ‡ΡˆΠΈΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠΌ ΠΈ Π±ΠΎΠ»Π΅Π΅ спокойной ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ срСдой.

This entry was posted in ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΠ΅