Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΊΠΎΠ΄Π΅

ΠžΠ΄Π½Π°ΠΆΠ΄Ρ‹, Π‘ΠΈΠΌΠ±Π°, всё это Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π²ΠΎΠΈΠΌ

Иногда программисты Π½Π° вопрос, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ это «лСгаси» ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π½ΠΈΡ‡Π΅Π³ΠΎ нСльзя. РазбСрёмся, Ρ‡Ρ‚ΠΎ это Π·Π½Π°Ρ‡ΠΈΡ‚, насколько это ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚ с лСгаси-ΠΊΠΎΠ΄ΠΎΠΌ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси

Π‘ английского legacy пСрСводится ΠΊΠ°ΠΊ «наслСдиС». ЛСгаси-ΠΊΠΎΠ΄ β€” это ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅ΡˆΡ‘Π» Β«ΠΏΠΎ наслСдству» ΠΎΡ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Π§Π°Ρ‰Π΅ всСго это происходит Ρ‚Π°ΠΊ:

👉 ΠŸΡ€ΠΎΡ‰Π΅ говоря, лСгаси β€” это ΠΊΠΎΠ΄, ΠΏΡ€ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ говорят: Β«Π­Ρ‚ΠΎ Π΅Ρ‰Ρ‘ ΠœΠΈΡ…Π°Π»Ρ‹Ρ‡ писал 8 Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ для синхронизации с сСрвСром, ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΌΡ‹ Π΅Π³ΠΎ Π½Π΅ Ρ‚Ρ€ΠΎΠ³Π°Π΅ΠΌ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΈΠ½Π°Ρ‡Π΅ всё сломаСтся». ΠŸΡ€ΠΈ этом ΠœΠΈΡ…Π°Π»Ρ‹Ρ‡Π° Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π΄Π°Π²Π½ΠΎ Π½Π΅Ρ‚, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Ρ‚ΠΎΠΆΠ΅ Π½Π΅Ρ‚, ΠΈ ΠΏΡ€ΠΎΡ‰Π΅ этот ΠΊΠΎΠ΄ Π½Π΅ Ρ‚Ρ€ΠΎΠ³Π°Ρ‚ΡŒ совсСм.

Π’Π°ΠΊ ΠΊΠ°ΠΊ лСгаси β€” это старый ΠΊΠΎΠ΄, Ρ‚ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π° Π½Π΅Π³ΠΎ завязаны ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π²Π°ΠΆΠ½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚Ρ‹ΠΉ ΠΊΡ€ΡƒΠ³: ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ лСгаси нСльзя, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π±Π΅Π· Π½Π΅Π³ΠΎ всё сломаСтся, Π½ΠΎ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ состоянии Ρ‚ΠΎΠΆΠ΅ слоТно, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½ΠΈΠΊΡ‚ΠΎ Π½Π΅ Ρ…ΠΎΡ‡Π΅Ρ‚ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ Π² старом ΠΊΠΎΠ΄Π΅.

ΠžΡ‚ΠΊΡƒΠ΄Π° бСрётся лСгаси

ΠŸΡ€ΠΈΡ‡ΠΈΠ½ появлСния лСгаси ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько:

ЛСгаси β€” это Π½Π΅ ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ прСступлСниС, Π° Ρ‡Π°ΡΡ‚ΡŒ ΠΆΠΈΠ·Π½ΠΈ любой ΠΆΠΈΠ²ΠΎΠΉ ИВ-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ Ρƒ любого ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° появится лСгаси. И Ρ‡Π΅ΠΌ ΠΊΡ€ΡƒΠΏΠ½Π΅Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Ρ‚Π΅ΠΌ большС Π΅Π³ΠΎ Π±ΡƒΠ΄Π΅Ρ‚. НапримСр, Π² исходном ΠΊΠΎΠ΄Π΅ Windows 10 Π΄ΠΎ сих ΠΏΠΎΡ€ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠ΄Π°, написанныС Π΅Ρ‰Ρ‘ 20 Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ для Windows 3.1.

ЛСгаси β€” это ΠΏΠ»ΠΎΡ…ΠΎ?

ЛСгаси β€” это просто старый ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π½Π°Ρ€Π°Π²Π½Π΅ с Π½ΠΎΠ²Ρ‹ΠΌ. Если ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ β€” ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ, ΠΏΡƒΡΡ‚ΡŒ ΠΆΠΈΠ²Ρ‘Ρ‚. Π”Ρ€ΡƒΠ³ΠΎΠ΅ Π΄Π΅Π»ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ΄ Π±Ρ‹Π» написан Π½Π΅ Π½Π° старом Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ΅, Π° Π½Π° Π½ΠΎΠ²ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π½Π°ΡŽΡ‚ всС.

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Π³Π»Π°Π²Π½Ρ‹ΠΉ минус лСгаси-ΠΊΠΎΠ΄Π° Π½Π΅ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠ»ΠΎΡ…ΠΎ, Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ.

Π§Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ Β«ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ старый ΠΊΠΎΠ΄Β»?

НапримСр, Π² старом ΠΊΠΎΠ΄Π΅ для запроса ΠΊ сСрвСру ΠΈΠ΄Ρ‘Ρ‚ сначала адрСс, Π° ΠΏΠΎΡ‚ΠΎΠΌ Π½ΠΎΠΌΠ΅Ρ€ запроса. Бпустя 10 Π»Π΅Ρ‚ трСбования сСрвСра измСнились, поэтому сначала Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ΄Ρ‚ΠΈ запрос, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΡƒΠΆΠ΅ адрСс. Π—Π½Π°Ρ‡ΠΈΡ‚, Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ порядок ΠΏΠΎΠ»Π΅ΠΉ Π² ΠΊΠΎΠ΄Π΅.

Если старый ΠΊΠΎΠ΄ понятСн ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π·Π°Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½, Π½Π° эту Π·Π°Π΄Π°Ρ‡Ρƒ ΡƒΠΉΠ΄Ρ‘Ρ‚ Π΄Π²Π΅ ΠΌΠΈΠ½ΡƒΡ‚Ρ‹. Если это старыС ΠΏΡ‹Π»ΡŒΠ½Ρ‹Π΅ лСгаси-кишки, Ρ‚ΠΎ это ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ Π½Π° час.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ с лСгаси-ΠΊΠΎΠ΄ΠΎΠΌ

Если лСгаси-ΠΊΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ β€” Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ° Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ, ΠΏΡƒΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Π‘ΡƒΠ΄Π΅Ρ‚ врСмя β€” ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡˆΠ΅ΠΌ Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ, Π° Ссли Π½Π΅Ρ‚, Ρ‚ΠΎ ΠΈ Ρ‚Π°ΠΊ ΠΏΠΎΠΊΠ° ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

А Ссли Π½ΡƒΠΆΠ½ΠΎ срочноС Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ β€” ΠΏΠ°Ρ…Π½Π΅Ρ‚ Π±Π΅Π΄ΠΎΠΉ. Π—ΠΎΠ²ΠΈΡ‚Π΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠ².

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ legacy code?

НС ΠΌΠΎΠ³Ρƒ Π½Π°ΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄. ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ Π² Π΄Π²ΡƒΡ… словах Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅? Π§Ρ‚ΠΎ Π·Π° понятиС?

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

5 ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² 5

Legacy code β€” тяТСлая Π½Π°ΡΠ»Π΅Π΄ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ : ) Π£ΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΠΎΠ»Π΅Π΅ Π½Π΅ поддСрТиваСтся ΠΈ Π½Π΅ обновляСтся, Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. Π’Ρ‚ΠΎΡ€ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” ΠΊΠΎΠ΄ ΠΎΡ‚ сторонних Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΈΠ»ΠΈ ΠΈΠ· старых вСрсий.

Π‘ΡƒΠΌΠΌΠΈΡ€ΠΎΡ€Π°Π² всС опрСдСлСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°Π»ΠΈΡΡŒ, для сСбя Π²Ρ‹Π²Π΅Π» ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅.

Legacy code β€” ΠΊΠΎΠ΄, ΠΏΠΎΠ΄ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ΄ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ²:

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Всё Π΅Ρ‰Ρ‘ ΠΈΡ‰Π΅Ρ‚Π΅ ΠΎΡ‚Π²Π΅Ρ‚? ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ вопросы с ΠΌΠ΅Ρ‚ΠΊΠ°ΠΌΠΈ тСрминология ΠΈΠ»ΠΈ Π·Π°Π΄Π°ΠΉΡ‚Π΅ свой вопрос.

БвязанныС

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

ΠŸΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Π½Π° Π»Π΅Π½Ρ‚Ρƒ

Для подписки Π½Π° Π»Π΅Π½Ρ‚Ρƒ скопируйтС ΠΈ Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ эту ссылку Π² Π²Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для чтСния RSS.

Π΄ΠΈΠ·Π°ΠΉΠ½ сайта / Π»ΠΎΠ³ΠΎΡ‚ΠΈΠΏ Β© 2021 Stack Exchange Inc; ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π° условиях Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ cc by-sa. rev 2021.12.10.40971

НаТимая Β«ΠŸΡ€ΠΈΠ½ΡΡ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ cookieΒ» Π²Ρ‹ ΡΠΎΠ³Π»Π°ΡˆΠ°Π΅Ρ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Stack Exchange ΠΌΠΎΠΆΠ΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ cookie Π½Π° вашСм устройствС ΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² соотвСтствии с нашСй ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² cookie.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Код Π±Π΅Π· тСстов β€” лСгаси

Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² IT, Ρ‚ΠΎ ΠΎ лСгаси Π²Ρ‹ ΡΠ»Ρ‹ΡˆΠΈΡ‚Π΅ часто β€” ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ с мноТСством Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΊΠΎΠ½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΉ. ΠŸΠΎΠ½ΡΡ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ это Π½Π΅ Β«Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄Β», Π½ΠΎ ΠΊΠ°ΠΊΠΎΠΉ? ΠœΠΎΠΆΠ΅Ρ‚ старый, ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ ΠΈΠ»ΠΈ Π½Π΅ обновляСмый, Π° ΠΌΠΎΠΆΠ΅Ρ‚ просто Ρ‡ΡƒΠΆΠΎΠΉ? Π•ΡΡ‚ΡŒ Π»ΠΈ Β«ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ΅Β» ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ «лСгаси», Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ? А ΠΊΠΎΠ³Π΄Π° разбСрСмся β€” Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ с лСгаси? ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ. Π‘ΠΏΠΎΠΉΠ»Π΅Ρ€: Π²Ρ‹Π²ΠΎΠ΄Ρ‹ Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Автор β€” Николас ΠšΠ°Ρ€Π»ΠΎ, Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π² Busbud (ΠœΠΎΠ½Ρ€Π΅Π°Π»ΡŒ, Канада). БпСциализируСтся Π½Π° лСгаси. Π’ свободноС врСмя ΠΎΡ€Π³Π°Π½ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΌΠΈΡ‚Π°ΠΏ Software Crafters ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ с конфСрСнциями SoCraTes Canada ΠΈ The Legacy of SoCraTes.

Данная ΡΡ‚Π°Ρ‚ΡŒΡ Π±Ρ‹Π»Π° скомпилирована (ΠΈ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π°) ΠΈΠ· Π΄Π²ΡƒΡ… статСй Николаса: Β«What is Legacy Code? Is it code without tests?Β» ΠΈ Β«The key points of Working Effectively with Legacy CodeΒ». Показалось Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси, Π° ΠΏΠΎΡ‚ΠΎΠΌ β€” ΠΊΠ°ΠΊ с Π½ΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ «лСгаси»?

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ссли Π²Ρ‹ задавались этим вопросом, Ρ‚ΠΎ встрСчали ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚ Майкла ЀизСрса. Майкл выпустил ΠΊΠ½ΠΈΠ³Ρƒ Β«Working Effectively with Legacy CodeΒ» Π² 2004 Π³ΠΎΠ΄Ρƒ, Π½ΠΎ ΠΎΠ½Π° Π΄ΠΎ сих ΠΏΠΎΡ€ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π°. Комикс это ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Π’ своСй ΠΊΠ½ΠΈΠ³Π΅ Майкл ΠΏΠΈΡˆΠ΅Ρ‚ своё ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅:

«Для мСня лСгаси β€” это просто ΠΊΠΎΠ΄ Π±Π΅Π· тСстов».

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ЀизСрс Ρ‚Π°ΠΊ считаСт? ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΠΎ Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠ»Π΅Ρ‚Π½Π΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Ρƒ Π±Π΅Π· тСстов ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ всё, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ ΡƒΠΌΠ΅Π΅Ρ‚. Если тСстов Π½Π΅Ρ‚, Ρ‚ΠΎ для понимания, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ Π΄Π΅Π»Π°Π΅Ρ‚, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, воспроизвСсти ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² своСй Π³ΠΎΠ»ΠΎΠ²Π΅ ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ сцСнарии. ΠŸΠΎΡ‚ΠΎΠΌ Π²Ρ‹ помСняСтС ΠΊΠΎΠ΄ ΠΈ Π½ΡƒΠΆΠ½ΠΎ снова ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ всС сцСнарии. Или ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΈΡ… Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Π½ΠΎ всСгда Π΅ΡΡ‚ΡŒ шанс Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒ.

Π­Ρ‚ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅: Ρ‡Π°Ρ‰Π΅ всСго тСсты ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ это Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ Π½Π°Ρ‡Π°Π»ΠΎ. Но это Π΅Ρ‰Ρ‘ Π½Π΅ всё β€” Π΅ΡΡ‚ΡŒ Π½ΡŽΠ°Π½ΡΡ‹.

Код с тСстами Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ лСгаси. Если Π²Ρ‹ Ρ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅ тСсты, Π½ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ β€” ΠΎΠ½ΠΈ отстой. ΠŸΠ»ΠΎΡ…ΠΈΠ΅ тСсты Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅ΡˆΠ°ΡŽΡ‚: тСстируСмый ΠΊΠΎΠ΄ Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΎΡ‚Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ Ρƒ Π½Π΅Π³ΠΎ Π½Π΅ Π±Ρ‹Π»ΠΎ тСстов, Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°ΠΆΠ΅ ΠΈ слоТнСС!

ВСстов ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ Π½Π΅ Π±Ρ‹Ρ‚ΡŒ, Π½ΠΎ ΠΊΠΎΠ΄ всё Π΅Ρ‰Ρ‘ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚Π΅ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΊΠΎΠ΄ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ Π±Π΅Π· тСстов, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ. Π₯отя, ΠΏΠΎ ΠΌΠΎΠ΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Ρƒ, это аномалия. Π­Ρ‚Ρƒ ΠΊΠΎΠ΄ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Π½ΠΎ отсутствиС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… тСстов всё ΠΆΠ΅ Π½Π΅ позволяСт ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΊ лСгаси.

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘ΠΌ ΠΊ ΠΌΠΎΠ΅ΠΌΡƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ лСгаси.

ЛСгаси β€” это Ρ†Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Π±ΠΎΠΈΡ‚Π΅ΡΡŒ ΠΌΠ΅Π½ΡΡ‚ΡŒ.

НапримСр, ΠΌΡ‹ ΠΈΡ‰Π΅ΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ ошибки ΠΈΠ»ΠΈ выясняСтС, ΠΊΡƒΠ΄Π° Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ свою Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. ΠœΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎΠ΄, Π½ΠΎ это Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ нСпонятно ΠΊΠ°ΠΊ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅. Π“ΠΎΡ‚ΠΎΠ²ΠΎ β€” Ρƒ нас лСгаси!

ΠœΡ‹ ΠΏΠ΅Ρ€Π΅ΠΎΡ†Π΅Π½ΠΈΠ²Π°Π΅ΠΌ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ Π΄ΡƒΠΌΠ°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ писали Π½Π΅ ΠΌΡ‹ β€” ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ. Π­Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ с нашими ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π»ΠΈ ΠΈ ΠΈΠΌΠ΅Π»ΠΈ Π² Π²ΠΈΠ΄Ρƒ, ΠΊΠΎΠ³Π΄Π° писали эту ΠΌΠ΅ΡˆΠ°Π½ΠΈΠ½Ρƒ Π½Π° экранС.

Π₯ΠΎΡ€ΠΎΡˆΠΈΠ΅ тСсты ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π»Π΅Π³ΠΊΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΉ ΠΊΠΎΠ΄. А ΠΏΠ»ΠΎΡ…ΠΈΠ΅ тСсты Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚. ΠžΡ‚ΡΡŽΠ΄Π° ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ЀизСрса.

Π‘ лСгаси ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ врСмя. ΠŸΠ°Ρ€Π°Π΄ΠΎΠΊΡΠ°Π»ΡŒΠ½ΠΎ: ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ врСмя ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ любой ΠΊΠΎΠ΄ Π² лСгаси, Π½ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π½Π°ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ врСмя. Если Π²Ρ‹ Π½Π°Ρ‡Π°Π»ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ лСгаси ΠΈ это Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ β€” ΠΏΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡ‚Π΅. Π”Π°, большая Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° уТасна, Π½ΠΎ Π²Ρ‹ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ½Π΅Ρ‚Π΅ ΠΈ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅ Π΅Π³ΠΎ ΠΏΡ€ΠΈΡ‡ΡƒΠ΄Ρ‹ ΠΈ особСнности.

ЛСгаси Π½Π΅ Π²ΠΈΠ½ΠΎΠ²Π°Ρ‚ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° уТасна, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ½ΠΎΠ³ΠΈΡ… людСй Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»Π³ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ с ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ²Ρ‹ΠΌΠΈ трСбованиями ΠΈ ΠΏΠΎΠ΄ Π΄Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π΄Π΅Π΄Π»Π°ΠΉΠ½ΠΎΠ². Π­Ρ‚ΠΎ Π Π΅Ρ†Π΅ΠΏΡ‚ Π£ΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ΅Π³ΠΎ Кода™. Когда ΠΌΠ°Π»ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ нСдостаточно Π·Π½Π°Π½ΠΈΠΉ β€” Ρ€ΠΎΠΆΠ΄Π°ΡŽΡ‚ΡΡ костыли (Π½Ρƒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅). Π’ ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ², ΠΌΡ‹ достигнСм состояния, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ошибкС, Π° рСализация любой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Ρ†Π΅Π»ΡƒΡŽ Π²Π΅Ρ‡Π½ΠΎΡΡ‚ΡŒ.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°ΠΆΠ½Π΅ΠΉΡˆΠΈΡ… нюансов.

ЛСгаси β€” это ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΠΈΠ·ΠΎ всСх сил пытаСмся ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ.

ЛСгаси β€” это личная Ρ‚ΠΎΡ‡ΠΊΠ° зрСния. Π£ΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Какой-Ρ‚ΠΎ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ слоТным, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π΅Π³ΠΎ Π΅Ρ‰Ρ‘ Π½Π΅ поняли, Π° ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ, Π½ΠΎ всё Ρ€Π°Π²Π½ΠΎ чувствуСм сСбя Π½Π΅ΠΊΠΎΠΌΡ„ΠΎΡ€Ρ‚Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠΌ. Но ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΎΡ‰ΡƒΡ‰Π΅Π½ΠΈΠ΅ «лСгаси» зависит ΠΎΡ‚ нашСго понимания ΠΊΠΎΠ΄Π°, ΠΈ Π½Π°ΡˆΠΈΡ… чувств ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ Π΅Π³ΠΎ измСнСния. Часто люди этого Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚.

Π’ ΠΈΡ‚ΠΎΠ³Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ лСгаси это:

ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ пытаСмся ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ;

Как ΠΆΠ΅ эффСктивно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с лСгаси?

ЛСгаси β€” ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ пытаСмся ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ. Π—Π°Π΄Π°Ρ‡Π° Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. Как Π±Π΅Π· тСстов ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ сломали? Нам Π½ΡƒΠΆΠ½Π° обратная связь. Автоматизированная обратная связь β€” Π΅Ρ‰Ρ‘ Π»ΡƒΡ‡ΡˆΠ΅.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСсты, Π° Π·Π°Ρ‚Π΅ΠΌ внСсти измСнСния

Π›ΠΎΠ³ΠΈΡ‡Π½ΠΎ, Ρ‡Ρ‚ΠΎ Ссли Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСсты, ΠΎΠ½ΠΈ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π΅Π³ΠΎ Β«ΠΏΡ€ΠΎΡ‰ΡƒΠΏΠ°Ρ‚ΡŒΒ» ΠΈ ΠΎΠ½ пСрСстанСт Π±Ρ‹Ρ‚ΡŒ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ β€” Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ тСсты. Волько Ρ‚ΠΎΠ³Π΄Π° ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π² бСзопасности, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄.

Но Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ тСсты, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎΠ΄. Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ парадокс лСгаси. ΠœΡ‹ ΠΎΠ±Ρ€Π΅Ρ‡Π΅Π½Ρ‹? НСт. ПомСняСм ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ мСньшС ΠΊΠΎΠ΄Π° для тСстов:

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ Ρ‚ΠΎΡ‡ΠΊΠΈ измСнСния β€” Β«ΡˆΠ²Ρ‹Β».

ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π° ΠΏΡƒΠ½ΠΊΡ‚Π° самыС слоТныС, Π° ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ добСрёмся Π΄ΠΎ тСстов, ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ.

Найти Β«ΡˆΠ²Ρ‹Β» для Ρ€Π°Π·Ρ€Ρ‹Π²Π° зависимостСй

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ добавляСм тСсты ΠΊ лСгаси Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Β«ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° зависимостСй»: ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π΅ΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ слоТноС для тСстирования. Иногда это соСдинСниС с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΠ½ΠΎΠ³Π΄Π° Π²Ρ‹Π·ΠΎΠ² Π½Π° сторонний сСрвСр, Π° ΠΈΠ½ΠΎΠ³Π΄Π° β€” ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слоТно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ. А Ρ‡Π°Ρ‰Π΅ всё ΠΈ сразу.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ эти зависимости Π² тСстах. Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ Β«ΡˆΠ²Ρ‹Β».

Β«Π¨ΠΎΠ²Β» β€” мСсто, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½Π΅ мСняя ΠΊΠΎΠ΄.

Β«Π¨Π²Ρ‹Β» Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅. Если это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ЯП, Ρ‚ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² JavaScript.

Допустим, ΠΌΠ΅Ρ‚ΠΎΠ΄ connect() Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ пытаСмся ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π² тСсты. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ вСсь класс β€” это «шов», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ. МоТно Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ этот класс Π² тСстах, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ Π‘Π”.

Π•ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ швов. Если язык позволяСт ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π±Π΅Π· измСнСния исходного ΠΊΠΎΠ΄Π°, Ρƒ нас Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΠ° Π²Ρ…ΠΎΠ΄Π° Π² написаниС тСстов. ΠšΡΡ‚Π°Ρ‚ΠΈ ΠΎ тСстах…

НапишСм unit-тСсты

Дискуссии ΠΎ Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°Ρ… тСстирования ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ€Π°ΡΡ‚Π°ΡŽΡ‚ Π² Ρ…ΠΎΠ»ΠΈΠ²Π°Ρ€Ρ‹. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹ тСстов, ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ максимум unit-тСстов? Или ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Β«ΠšΡƒΠ±ΠΎΠΊ тСстирования» ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² основном ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅?

ΠŸΠΎΡ‡Π΅ΠΌΡƒ совСты Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ²Ρ‹Π΅? ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρƒ Π½ΠΈΡ… Π½Π΅Ρ‚ Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ опрСдСлСния Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Β«unitΒ». Одни люди говорят ΠΎΠ± Β«ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… тСстах» ΠΈ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΡŽΡ‚ всю Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΡŽΡ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ класс ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹, Майкл Π΄Π°Ρ‘Ρ‚ Ρ‡Π΅Ρ‚ΠΊΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ НЕ unit-тСст:

ΠΎΠ½ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ быстро (

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΠΈ интСрСсныС ΡΡ‚Π°Ρ‚ΡŒΠΈ:

О Ρ‚ΠΎΠΌ, Π½Π°Π΄ Ρ‡Π΅ΠΌ Π² Ρ†Π΅Π»ΠΎΠΌ ΠΌΡ‹ Ρ‚ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ: ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚, ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚, ΠΎΠΏΡΡ‚ΡŒ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚.

ΠšΡ€Π°Ρ‚ΠΊΠΎ ΠΎΠ± истории Open Source β€” просто Ρ€Π°Π·Π²Π»Π΅Ρ‡ΡŒΡΡ (Π΄Π° ΠΈ ΡΡ‚Π°Ρ‚ΡŒΡ Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ).

Π‘ΠΎΠ»ΡŒΡˆΠ΅ новостСй ΠΏΡ€ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π² Π”ΠΎΠ΄ΠΎ ΠŸΠΈΡ†Ρ†Π΅ я ΠΏΠΈΡˆΡƒ Π² ΠΊΠ°Π½Π°Π»Π΅ Dodo Pizza Mobile. Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° Ρ‡Π°Ρ‚ Dodo Engineering, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ эту ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ наши ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° ΠΊΠ°Π½Π°Π» Dodo Engineering, Π³Π΄Π΅ ΠΌΡ‹ постим всё, Ρ‡Ρ‚ΠΎ с Π½Π°ΠΌΠΈ интСрСсного происходит.

А Ссли Ρ…ΠΎΡ‡Π΅ΡˆΡŒ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒΡΡ ΠΊ Π½Π°ΠΌ Π² Dodo Engineering, Ρ‚ΠΎ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π΄Ρ‹ β€” сСйчас Ρƒ нас ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ вакансии iOS-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² (Π° Π΅Ρ‰Ρ‘ для Android, frontend, SRE ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ…).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Legacy-ΠΊΠΎΠ΄ β€” это Ρ€Π°ΠΊ

Legacy-ΠΊΠΎΠ΄ – это большоС НЕВ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Π₯отя, ΠΊΡ‚ΠΎ я Ρ‚Π°ΠΊΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ нСсти ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ Ρ‡ΡƒΡˆΡŒ? Π― Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π» большой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΊΡƒΡ‡Π΅ΠΉ заинтСрСсованных сторон ΠΈ саппортом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ развиваСтся супСрмСдлСнно ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚ всСх счастливыми. Насколько Π΄ΠΎΠ»Π³ΠΎ ΠΎΠ½ дСлаСтся ΠΈ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π΅ Π²Π°ΠΆΠ½ΠΎ, вСдь ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² 100 Ρ€Π°Π· бСзопаснСй ΠΈ Π² 1000 Ρ€Π°Π· быстрСС, Π²Π΅Ρ€Π½ΠΎ? НС совсСм. Моим самым большим Ρ€Π΅Π±Π΅Π½ΠΊΠΎΠΌ Π±Ρ‹Π» сайт ΠΊΡ€ΡƒΠΏΠ½ΠΎΠ³ΠΎ издатСля со слоТным Π±Π΅ΠΊΠ΅Π½Π΄ΠΎΠΌ Π½Π° ZF1.

Π― ΠΏΡ‹Ρ‚Π°ΡŽΡΡŒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ большиС измСнСния ΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ лишь Π² Ρ‚ΠΎΠΌ случаС, ΠΊΠΎΠ³Π΄Π° Π·Π° Π½ΠΈΠΌΠΈ стоят способныС люди. Если всС Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π΄Π΅Π»Π°Π΅Ρ‚Π΅ β€” это ΡΠΏΠ»ΠΎΡˆΠ½Ρ‹Π΅ agile-ΠΌΠΈΡ‚ΠΈΠ½Π³ΠΈ ΠΈ ΠΌΠΎΠ·Π³ΠΎΠ²Ρ‹Π΅ ΡˆΡ‚ΡƒΡ€ΠΌΡ‹, Ρ‚ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΎΠ΅ количСство LTS ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ Π²Π°ΠΌ Π³Π»ΡƒΠΏΠΎ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ пяти Π»Π΅Ρ‚.

Π”Π°ΠΆΠ΅ Ссли Π²Ρ‹ Π΄Π΅Π»Π°Π΅Ρ‚Π΅ Π±Π΅ΡΠΏΠ»Π°Ρ‚Π½ΡƒΡŽ ΠΈ/ΠΈΠ»ΠΈ open source Ρ€Π°Π±ΠΎΡ‚Ρƒ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅ Π²Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π»ΠΎΠΌΠ°Ρ‚ΡŒ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ для X-1 ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. ДСлая ΠΈΠΌ ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅, развивая старыС вСрсии, ΠΏΡ€ΠΈ глобальном ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ с ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΡ‚Π΅Ρ€Π΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ совмСстимости. ΠŸΡ€ΠΎΡΡ‚ΠΎ усвойтС ΠΎΠ΄Π½Ρƒ Π²Π΅Ρ‰ΡŒ β€” ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈΡΠΏΠΎΡΠΎΠ±ΠΈΡ‚ΡŒΡΡ, Π»ΠΈΠ±ΠΎ ΡƒΠΌΠ΅Ρ€Π΅Ρ‚ΡŒ.

Π’Π°ΠΊ всС ΠΆΠ΅ ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠ·Π³Π½Π°Ρ‚ΡŒ legacy-ΠΊΠΎΠ΄ ΠΈΠ· соврСмСнных систСм?

БСсконСчноС LTS проклятиС

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

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

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

Π’Ρ‹ ΠΎΡ‚Ρ‡ΡƒΠΆΠ΄Π°Π΅Ρ‚Π΅ΡΡŒ ΠΈ Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½ΠΎ влияСтС Π½Π° ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

НСудачи ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡ€Π΅Π΄Π²Π΅Ρ‰Π°ΡŽΡ‚ успСх

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΈΠ½ΠΎΠ³Π΄Π° это просто Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅Π΄ΠΊΠΈΠΌ ΠΈ Ρ†Π΅Π½Π½Ρ‹ΠΌ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΌ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠΌ. Один ΠΈΠ· Π»ΡŽΠ±ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… случаСв вСрсионирования β€” 2ΠΉ ΠΈ 3ΠΉ Python. Python β€” это ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ язык, с Π½ΠΈΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ практичСски всС Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ. Но ΠΎΠ½ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΌΠΎΠ³ Π±Ρ‹ язык, построСнный ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ для вашСй Ρ†Π΅Π»ΠΈ, это ΠΎΠ±Ρ‰ΠΈΠΉ нСдостаток «мастСр-Π½Π°-всС-Ρ€ΡƒΠΊΠΈΒ» языков β€” ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Π½ΠΎ Π½Π΅Ρ‚ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½ΠΈΡ… Π±Π΅Π·ΡƒΠΏΡ€Π΅Ρ‡Π½ΠΎ. Когда ΠΏΡ€ΠΈΡˆΠ΅Π» Python 3, Π² Π½Π΅Π³ΠΎ Π±Ρ‹Π»ΠΈ Π²Π²Π΅Π΄Π΅Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„ΠΈΡ‡ΠΈ, Π»ΠΎΠΌΠ°ΡŽΡ‰ΠΈΠ΅ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ 2ΠΉ вСрсии ΡƒΠΆΠ΅ Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ Ρ‚Π°ΠΊ просто ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π½Π΅Π³ΠΎ.

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΎΠΊ Π²Ρ€ΠΎΠ΄Π΅ Β«ΠΏΠΎΠΊΠ° Π΅Ρ‰Π΅ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ Py3 ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²Β» ΠΈ Β«Ρƒ нас слишком ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² Py2, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ всС это» ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΠΎΡ‚ мСня ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ β€” Β«ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎΒ» ΠΈ Β«Π‘Π΅Π΄Π½Ρ‹Π΅ программисты, ΠΈΡ… Π·Π°ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄Β», соотвСтствСнно. БогласСн, Ρ‚ΡƒΡ‚ Π±Ρ‹Π»ΠΎ нСсколько Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π½ΠΎ ΠΈ Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π±Π΅Ρ€ΡƒΡ‚ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ спроСктированы, Ρ‡Ρ‚ΠΎ ΠΈ Π²Ρ‹Π»ΠΈΠ»ΠΎΡΡŒ Π² ΠΈΡ… абсурдно большой Ρ€Π°Π·ΠΌΠ΅Ρ€.

На самом Π΄Π΅Π»Π΅ сСйчас противостояниС Py2 ΠΏΡ€ΠΎΡ‚ΠΈΠ² Py3 ΡƒΠΆΠ΅ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΠ»ΠΎΡΡŒ Π² Ρ€Π°Π·Π»ΠΎΠΌ, ΠΏΠΎ ΠΎΠ±Π΅ΠΈΠΌ сторонам ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ стоят программисты. Но ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π½Π΅ Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊ Ρ‚ΠΎΠΌΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Python 4, люди, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π°ΠΊ яростно ΠΎΡ‚ΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΈΡΡŒ ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° Π²Π΅Ρ€ΡΠΈΡŽ 3+ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎ ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΎΡΡ‚Π°Π²Π°Ρ‚ΡŒΡΡ Π½Π° Py2 ΠΈ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ станСт Π΅Ρ‰Π΅ большС. К Ρ‚ΠΎΠΌΡƒ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΡƒΠΆΠ΅ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ язык, Π° Π½Π΅ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΈΡ‚ΡŒΡΡ измСнСниям Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ρ‚Π΅, ΠΊΡ‚ΠΎ «отваТился» ΠΏΠ΅Ρ€Π΅ΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Ρ€Π°Π·Π»ΠΎΠΌ ΠΈ пСрСписал свой ΠΊΠΎΠ΄ Π½Π° 3+ Π±Π΅Π· Π΄ΠΎΠ»Π³ΠΈΡ… ΠΊΠΎΠ»Π΅Π±Π°Π½ΠΈΠΉ, ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ всС новСйшиС возмоТности Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… вСрсий с Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌΠΈ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌΠΈ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

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

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ vs Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ/ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹

Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ вопросы ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ противостояния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Ссли ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Β«Π½Π΅ ΡƒΡΡ‚Π°Ρ€Π΅Π²Π°Ρ‚ΡŒΒ» ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π΅Π»ΠΈΠ·Π° Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π»ΠΈ ΠΎΠ½ΠΎ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒΡΡ ΠΈ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ?

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

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

НС Π±Ρ‹Π²Π°Π΅Ρ‚ достаточно большого прилоТСния

«Но Π‘Ρ€ΡƒΠ½ΠΎ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прилоТСния ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹ ΠΈ ΠΈΡ… пСрСписываниС Π·Π°ΠΉΠΌΠ΅Ρ‚ нСсколько мСсяцСв», скаТСтС Π²Ρ‹. Β«ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ с ZF1 Π½Π° ZF2 β€” это Π³ΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Ρ‹!Β», Π½Π° Ρ‡Ρ‚ΠΎ я ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽ: Ρ‡ΡƒΡˆΡŒ. НСт достаточно большого Π²Π΅Π±-прилоТСния, Π°ΠΏΠ³Ρ€Π΅ΠΉΠ΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π·Π°ΠΉΠΌΠ΅Ρ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ сроки. Π― ΠΏΠΎΠΉΠ΄Ρƒ Π΅Ρ‰Π΅ дальшС ΠΈ скаТу, Ρ‡Ρ‚ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅Ρ‚ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ достаточно Π±ΠΎΠ»ΡŒΡˆΠΈΡ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒΡΡ ΠΏΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌ с Symfony ΠΈΠ»ΠΈ Zend.

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, всС Ρ‡Ρ‚ΠΎ я Π³ΠΎΠ²ΠΎΡ€ΠΈΠ», Π½Π΅ относится ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ-Π»ΠΈΠ±ΠΎ ΠΈΠ· этих Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ², ΠΎΠ½ΠΈ гипСркомплСксныС Π±Π΅Π³Π΅ΠΌΠΎΡ‚Ρ‹ ΠΈΠ· ΠΎΡ‡Π΅Π½ΡŒ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π½ΠΎ Ссли Π²Ρ‹ слСдуСтС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ раздСлСния Π·Π°Π΄Π°Ρ‡, инкапсулируСтС свои сСрвисы ΠΈ APIΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„Ρ€ΠΎΠ½Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ Π±Π΅ΠΊΠ΅Π½Π΄Π°, Ρ‡Ρ‚ΠΎ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, освобоТдаСт вас ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€Π΅Π³Ρ€Π°Π΄ Π½Π° ΠΏΡƒΡ‚ΠΈ ΠΊ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ нСзависимо ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΈ/ΠΈΠ»ΠΈ популярности прилоТСния β€” ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ Ρƒ вас Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π΅ΡΡ‚ΡŒ программисты, Π° Π½Π΅ Ρ‚Π΅ΠΎΡ€Π΅Ρ‚ΠΈΠΊΠΈ. НСваТно сколько структур ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ β€” Π³Π»Π°Π²Π½ΠΎΠ΅ Π·Π½Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Ρ‚ΡŒ достаточно эффСктивным Π²ΠΎ врСмя ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΉ.

Π‘Ρ…Π΅ΠΌΠ° обновлСния

Как ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π΅Π΅ всСго ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒΡΡ? Π•ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠ΅ΠΌΠ»ΠΈΠΌΡ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ обновлСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ нСзависимо ΠΎΡ‚ популярности ΠΈΡ… прилоТСния/Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ:

Один ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², слСдущий этому ΠΏΡƒΡ‚ΠΈ β€” Guzzle. Π£ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ 3+ вСрсия ΠΈ 4+, для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΆΠΈΡ‚ΡŒ Π² Π½ΠΎΠ³Ρƒ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈ всСгда Π±Ρ‹Ρ‚ΡŒ Π½Π° ΠΏΠΈΠΊΠ΅ прогрСсса.

Π’Ρ‹Π²ΠΎΠ΄

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

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

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Legacy: Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ‡ΡƒΠΆΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ

Π”ΠΎΡ…ΠΎΠ΄Ρ‡ΠΈΠ²Ρ‹ΠΉ Π³Π°ΠΉΠ΄ ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с legacy ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ раскроСт тонкости взаимодСйствия с Π½Π΅ всСгда понятным ΠΏΠ»ΠΎΠ΄ΠΎΠΌ Ρ‡ΡƒΠΆΠΈΡ… Ρ€ΡƒΠΊ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈΠ£ вас Π±Ρ‹Π²Π°Π»ΠΎ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ смотритС Π½Π° Ρ‡ΡƒΠΆΠΎΠΉ ΠΊΠΎΠ΄ ΠΈ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅, с Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ? Π’ этом Π»Π°Π±ΠΈΡ€ΠΈΠ½Ρ‚Π΅ Ρ‡ΡƒΠΆΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π½Π΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ‚ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΈ Π½ΠΈΡ‚ΡŒ Ариадны: ΠΏΠΎΠ»Π°Π³Π°ΠΉΡ‚Π΅ΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° свои силы. А ΠΌΡ‹ подскаТСм πŸ™‚

ΠŸΠΎΠΆΠ°Π»ΡƒΠΉ, ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π·Π²ΡƒΡ‡ΠΈΡ‚ Ρ‚Π°ΠΊ:

«Если Π² ΠΊΠΎΠ΄Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π½Π΅ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ – это Π½Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.Β»

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΉ программист Π½Π°ΠΉΠ΄Π΅Ρ‚ нСдостатки Π² Ρ‡ΡƒΠΆΠΎΠΌ ΠΊΠΎΠ΄Π΅. Из этого ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Β«ΠΏΠΎΠ΄ сСбя», вСдь ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅. Β«ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒΒ» ΠΊΠΎΠ΄Π° Π² этом случаС понимаСтся ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ, исходя ΠΈΠ· собствСнного ΠΎΠΏΡ‹Ρ‚Π°.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ, ΠΏΠΎΠ΄ΡƒΠΌΠ°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, ΠΈ Π΅ΡΡ‚ΡŒ Π»ΠΈ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ Π½Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ этого. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, Π° Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅: Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΊΠΎΠ΄, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅, написан ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π»Π΅Ρ‚. НавСрняка Ρ‚Π°ΠΌ исправлСно ΠΌΠ½ΠΎΠ³ΠΎ Π±Π°Π³ΠΎΠ², ΠΈ, скорСС всСго, это цСлостноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ Π·Π° нСдСлю.

О Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅ Π΅ΡΡ‚ΡŒ Π½Π΅ ΠΎΠ΄Π½Π° ΠΊΠ½ΠΈΠ³Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ совСтом Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Working Effectively With Legacy Code.

Главная идСя ΠΊΠ½ΠΈΠ³ΠΈ построСна Π½Π° тСстах, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ систСму. Книга ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ «вопрос-ΠΎΡ‚Π²Π΅Ρ‚Β», ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² слоТном ΠΊΠΎΠ΄Π΅ ΠΈ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.

Π£Π²Π°ΠΆΠ°ΠΉΡ‚Π΅ Ρ‡ΡƒΠΆΠΎΠΉ Ρ‚Ρ€ΡƒΠ΄

Π•ΡΡ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ – ΡƒΠ²Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊ Ρ‡ΡƒΠΆΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ ΠΈ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ, Ρ€Π°Π±ΠΎΡ‚Π°Π²ΡˆΠΈΠΌ Π΄ΠΎ вас. Π‘Π»ΠΎΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ эффСктивным Π±Π΅Π· соблюдСния этого ΠΏΡ€Π°Π²ΠΈΠ»Π°.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

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

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

Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ систСмы ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π±Ρ€Π°Ρ‚ΡŒ Π½Π΅Π΄Π΅Π»ΠΈ ΠΈΠ»ΠΈ мСсяцы. Но Π±Π΅Π·Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π½Ρ‹ΠΌ это Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚. Π’ ΠΈΡ‚ΠΎΠ³Π΅ Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ систСму, ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅ процСссы ΠΈ всё Π·Π°Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚Π΅.

Π Π°Π±ΠΎΡ‚Π° с legacy-ΠΊΠΎΠ΄ΠΎΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ большиС пСрспСктивы. И Π½Π΅ ΡΠΏΠ΅ΡˆΠΈΡ‚Π΅ ΡƒΠ³Π»ΡƒΠ±Π»ΡΡ‚ΡŒΡΡ Π² критичСскиС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΎΠ·Π°Π΄Π°Ρ‡Π΅Π½Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ люди. ΠžΡ‡ΠΈΡ‰Π°ΠΉΡ‚Π΅ ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ΄. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, люди Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠΎΠ΄, ΠΊΠΎΠ³Π΄Π° ΠΊΡ€ΠΈΡ‚ΠΈΠΊΡƒΡŽΡ‚, Ρ‡Π΅ΠΌ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚Π΅ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ.

ΠšΠΎΠ½Ρ‡Π΅Π½ΠΎ, Π½Π΅ обойдСтся Π±Π΅Π· собствСнных ошибок Π² процСссС, поэтому придСтся часто Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ Π·Π°Π½ΠΎΠ²ΠΎ.

Π£Ρ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ интСрСсы бизнСса

Π•ΡΡ‚ΡŒ поставлСнныС Ρ†Π΅Π»ΠΈ ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ: ΠΈΡ… нСльзя ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Π£Ρ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ интСрСсы бизнСса ΠΈ вноситС измСнСния, ΠΊΠΎΠ³Π΄Π°:

Π£ΠΌΠ΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ – Ρ‚ΠΎΠΆΠ΅ Π½Π°Π²Ρ‹ΠΊ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ вмСстС с ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ Π² Π½Π°Ρ‡Π°Π»Π΅, спроситС сСбя:

Β«ΠžΡ‚ΠΊΡ€ΠΎΡŽ Π»ΠΈ я Π½ΠΎΠ²ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ, которая Π±Ρ‹Π»Π° Π½Π΅Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΠ° Π΄ΠΎ этого, ΠΈ принСсСт Π»ΠΈ это ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ, ΠΊΡ€ΠΎΠΌΠ΅ мСня?Β»

Если Π½Π΅Ρ‚ ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎΠ³ΠΎ Β«Π”Π°Β», ΠΎΡ‚Π»ΠΎΠΆΠΈΡ‚Π΅ измСнСния. Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ стоит Π½Π΅ΠΌΠ°Π»Ρ‹Ρ… усилий.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° абстрагирования

АбстрагированиС – это Π²Π°ΠΆΠ½Ρ‹ΠΉ инструмСнт ООП наряду с ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠΎΠΌ, наслСдованиСм ΠΈ инкапсуляциСй. Абстракция позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Π½Π΅ вдаваясь Π² подробности ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Но Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто Π½Π΅Π²Π΅Ρ€Π½ΠΎ ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Β«ΡΠΏΡ€ΡΡ‚Π°Ρ‚ΡŒΒ» слоТности ΠΊΠΎΠ΄Π° Π·Π° абстрактный слой. Π­Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ. Π›ΡƒΡ‡ΡˆΠ΅ ΠΌΠΈΡ€ΠΈΡ‚ΡŒΡΡ с явными слоТностями ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ систСмы, Ρ‡Π΅ΠΌ Π²Ρ‹Π΄ΡƒΠΌΡ‹Π²Π°Ρ‚ΡŒ абстрактный ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π½Π°Π΄ этими слоТностями.

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

ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ способ – ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³.

ΠžΠ±Ρ‰Π°ΠΉΡ‚Π΅ΡΡŒ

Π”Π°, Π±Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€ΠΎΠ²Π΅Π½Π½ΠΎ ΠΏΠ»ΠΎΡ…ΠΎΠΉ ΠΊΠΎΠ΄.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ лСгаси Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Но Π½ΡƒΠΆΠ½ΠΎ спСрва Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ.

ΠžΠ±Ρ‰Π΅Π½ΠΈΠ΅ – Π²Π°ΠΆΠ½Ρ‹ΠΉ Π½Π°Π²Ρ‹ΠΊ. Π‘Π΅Π· Π½Π΅Π³ΠΎ тяТко Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² слоТной систСмС. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈ тСсты, спроситС Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²:

Если Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ нСдоступны, ΠΈΡ‰ΠΈΡ‚Π΅ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π² ΠΊΠΎΠ΄Π΅.

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

А Π΅Ρ‰Π΅ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ ΠΊΠΎΠ΄ ΠΈΠ· ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°, ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ ΠΈΠ΄Π΅ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ Π½Π΅Π΄Π°Π²Π½ΠΎ (всС этим Π³Ρ€Π΅ΡˆΠ°Ρ‚, Π²Π΅Ρ€Π½ΠΎ? πŸ™‚ ). Для ΠΏΠΎΠ΄ΠΎΠ·Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΡ‚Ρ€Ρ‹Π²ΠΊΠΎΠ² ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ поисковики.

Π‘Π»Π΅Π΄ΡƒΠΉΡ‚Π΅ ΡΡ†Π΅Π½Π°Ρ€ΠΈΡŽ использования для Π°Π½Π°Π»ΠΈΠ·Π° ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ прилоТСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugger’а. Π’ΠΎΠ·ΡŒΠΌΠΈΡ‚Π΅ Π½Π° Π·Π°ΠΌΠ΅Ρ‚ΠΊΡƒ нСпонятныС Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ набросайтС Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

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

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