Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄, ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΡΡ‚Π°Ρ‚ΡŒ вострСбованным Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. 784085b7a21a458d8591191b95470e74. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄-784085b7a21a458d8591191b95470e74. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 784085b7a21a458d8591191b95470e74. Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» статСй ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Β«Π±Π΅Π³Π°ΡŽΡ‚Β» Π² Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°Ρ…, Π° Π½Π΅ ΡΠ΅Π½ΡŒΠΎΡ€Π°Ρ….

Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» статСй ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Β«Π±Π΅Π³Π°ΡŽΡ‚Β» Π² Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°Ρ…, Π° Π½Π΅ ΡΠ΅Π½ΡŒΠΎΡ€Π°Ρ….

Начну, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, с философии, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ, со слов Π‘ΠΎΠΊΡ€Π°Ρ‚Π°: Β«Π’ΠΎΡ‚ Π²Π°ΠΌ ΠΌΠΎΠΉ совСт β€” Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠ»ΡƒΡˆΠ°ΠΉΡ‚Π΅ Π½ΠΈΡ‡ΡŒΠΈΡ… совСтов».

Π£Π²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ вопрос Β«Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄?Β», Π²ΠΎΠ·Π½ΠΈΠΊ с самого Π½Π°Ρ‡Π°Π»Π° появлСния Ρ‚Π°ΠΊΠΎΠΉ отрасли ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. И Π² процСссС становлСния этой индустрии ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ ΠΎΡ†Π΅Π½ΠΊΠΈ довольно ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎ мСнялись. Π’ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ…:

Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ β€” это ΠΊΠΎΠ΄ минимального Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, ΠΏΡ€ΠΎΡ‰Π΅ говоря, ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ минимального количСство ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для достиТСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.
Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ β€” это ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ быстро исполняСтся Π² систСмС.
Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ β€” это ΠΊΠΎΠ΄, который… Π±Π»Π°-Π±Π»Π°-Π±Π»Π°.

Π― занялся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ 20 Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ ΠΈ чСстно пытался ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€Π°Π²ΠΈΠ» написания Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ Π½Π° Ρ‚ΠΎΡ‚ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Волько Π²ΠΎΡ‚ Π² Ρ‡Π΅ΠΌ Ρ„ΠΈΡˆΠΊΠ°: ΠΊΠ°ΠΊ Π±Ρ‹ я Π½ΠΈ старался, мСня Π½Π΅ ΠΏΠΎΠΊΠΈΠ΄Π°Π»ΠΎ ΠΎΡ‰ΡƒΡ‰Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ я написал Π½Π΅Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅. И я старался снова, осваивал Π½ΠΎΠ²Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ°Π½ΡƒΠ»ΠΈ Π² Π»Π΅Ρ‚Ρƒ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Π²ΠΈΠ»ΠΈΡΡŒ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ, Ρ‡Ρ‚ΠΎ стали ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΌΠ°Π»ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ с ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΎΠΌ, ΠΈ всС Ρ€Π°Π²Π½ΠΎ я Ρ‚Π°ΠΊ ΠΈ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» 100% увСрСнности, Ρ‡Ρ‚ΠΎ Π΄Π° β€” этот ΠΊΠΎΠ΄ написан Ρ…ΠΎΡ€ΠΎΡˆΠΎ. И ΠΊΠ°ΠΊ оказалось, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° этому довольно проста. Π₯ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° Π² классичСском ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ Π½Π΅ сущСствуСт, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ³ΠΎΠ΄ΠΈΡ‚ΡŒ всСм ΠΈ вся. Но Π² процСссС поиска ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° вопрос, ΠΊΠ°ΠΊ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄, я ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… вопросов ΠΈ, Ρ‡Ρ‚ΠΎ самоС Π²Π°ΠΆΠ½ΠΎΠ΅ для программиста β€” это ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠΏΡ‹Ρ‚ ΠΈ знания. И я Π³ΠΎΡ‚ΠΎΠ² ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ своим ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ Π² своих ΡΡ‚Π°Ρ‚ΡŒΡΡ….

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. e35bcbaa386d4f71b179a5f2ef74bb28. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄-e35bcbaa386d4f71b179a5f2ef74bb28. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° e35bcbaa386d4f71b179a5f2ef74bb28. Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» статСй ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Β«Π±Π΅Π³Π°ΡŽΡ‚Β» Π² Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°Ρ…, Π° Π½Π΅ ΡΠ΅Π½ΡŒΠΎΡ€Π°Ρ….И Π²ΠΎΡ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ совСт: Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ, Π³ΠΎΡ‚ΠΎΠ²ΡŒΡ‚Π΅ΡΡŒ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ придСтся ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ постоянно.

Π›ΡŽΠ±ΠΎΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ° Π°ΠΏΡ€ΠΈΠΎΡ€ΠΈ. Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ваш нСпосрСдствСнный Ρ€Π°Π±ΠΎΡ‚ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ сторонний Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ, Π»ΠΈΠ±ΠΎ Π²Ρ‹ сами. Π’Π°ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, Ссли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ трСбования Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ° β€” это ΠΈ Π΅ΡΡ‚ΡŒ эталон, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠ·Π²Π°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ? Π­Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π·Π°Π±Π»ΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°. На самом Π΄Π΅Π»Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ согласно трСбованиям Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ любой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ. Π’ срок β€” ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, Π° Π²ΠΎΡ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π² срок ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ профСссионал. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ написанный ΠΊΠΎΠ΄ β€” это Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°Ρ‚ΡŒ.

Π›Π΅Π³ΠΊΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ β€” это ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, Π½Π° внСсСниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΡ…ΠΎΠ΄ΠΈΡ‚ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ срСдств (ΠΏΠΎΠ΄ срСдствами ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ Π»ΡŽΠ±Ρ‹Π΅ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹: Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ Ρ‚Ρ€ΡƒΠ΄/ часы Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈΠ»ΠΈ тСстировщика, врСмя, Π·Π°Ρ‚Ρ€Π°Ρ‡ΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ Π½Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ Π΄Π°ΠΆΠ΅ врСмя Π½Π° ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΡŽ!)

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

Π‘ΠΎΠ²Π΅Ρ‚ Π²Ρ‚ΠΎΡ€ΠΎΠΉ β€” ваша Π·Π°Π΄Π°Ρ‡Π° ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, это ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΡƒ. Π§Π΅ΠΌ Ρ‚ΠΎΡ‡Π½Π΅Π΅ Π²Ρ‹ это ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅, Ρ‚Π΅ΠΌ Ρ‚ΠΎΡ‡Π½Π΅Π΅ Π²Ρ‹ это Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚Π΅.

Π§Π΅ΠΌ быстрСС ΠΈ Π³Π°Ρ€ΠΌΠΎΠ½ΠΈΡ‡Π½Π΅Π΅ происходит процСсс, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π’Ρ‹ ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ΡΡŒ:

β€’ ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΉ Π²ΠΈΠ΄ отрасли, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€Π΅ΡƒΡΠΏΠ΅Ρ‚ΡŒ Π² Π½Π΅ΠΉ, Ρ‚ΠΎ с этим придСтся ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ;

β€’ Если Π²Ρ‹ Π΄ΡƒΠΌΠ°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ самый ΡƒΠΌΠ½Ρ‹ΠΉ программист, Π° всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ программисты Ρ‚ΡƒΠΏΡ‹Π΅, Ρ‚ΠΎ ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΅Ρ…Π°Ρ‚ΡŒ ΠΈΠ· Антарктиды ΠΈ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ с ΠΏΠΈΠ½Π³Π²ΠΈΠ½Π°ΠΌΠΈ. Π”ΠΎΠΏΡƒΡΠΊΠ°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡΠΈΠ»ΡŒΠ½Ρ‹ Π² этой области, Π½ΠΎ, Ссли Π²Ρ‹ всС-Ρ‚Π°ΠΊΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ Π² Ρ†ΠΈΠ²ΠΈΠ»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ΡΠ²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ сотрудником малСнькой ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, Ρ‚ΠΎΠ³Π΄Π° Π²ΠΏΠ΅Ρ€Π΅Π΄ Π² Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ. Π£Π²Π΅Ρ€ΡΡŽ Π½Π° 100% вас Ρ‚Π°ΠΌ ΠΆΠ΄ΡƒΡ‚, ΠΏΡ€Π°Π²Π΄Π°, вас провСрят Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π·Π½Π°Π½ΠΈΠΉ ΠΈ ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΎ Π½ΠΈΡ… Π±ΡƒΠ΄ΡƒΡ‚ Π½Π΅ ΠΏΠΈΠ½Π³Π²ΠΈΠ½Ρ‹;

β€’ Если Π²Ρ‹ Π³Π΅Π½ΠΈΠ°Π»ΡŒΠ½Ρ‹ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ считаСтС, Ρ‡Ρ‚ΠΎ компания с большим (Ρ…ΠΎΡ€ΠΎΡˆΠΎ, ΡƒΡ‚ΠΎΡ‡Π½ΡŽ) ΠΌΠ½ΠΎΠ³ΠΎΠΌΠΈΠ»ΠΈΠΎΠ½Π½Ρ‹ΠΌ ΠΎΠ±ΠΎΡ€ΠΎΡ‚ΠΎΠΌ ΠΈ Π²Ρ‹ΡˆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ располоТСна ΠΊ Π²Π°ΠΌ, Ρ‚ΠΎ Π²Ρ‹ ΠΎΡˆΠΈΠ±Π°Π΅Ρ‚Π΅ΡΡŒ. Π‘ΠΊΠΎΡ€Π΅Π΅ всСго Π²Ρ‹ ΠΎΠΊΠ°ΠΆΠ΅Ρ‚Π΅ΡΡŒ Π·Π° Π±ΠΎΡ€Ρ‚ΠΎΠΌ. Объясняю Π½Π° своСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅: ΠΎΡ‚ мСня долТностныС обязанности Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ управлСния ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π½Π° ΠΌΠ½Π΅ Π»Π΅ΠΆΠΈΡ‚ ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π·Π° сроки Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ качСство ΠΊΠΎΠ΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. А Π²ΠΎΡ‚ с Ρ‡Π΅ΠΌ я ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡΡŒ, ΠΊΠΎΠ³Π΄Π° Π±Π΅Ρ€Ρƒ Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ гСниального программиста:

ΠŸΠ΅Ρ€Π²ΠΎΠ΅. ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ доставлСн Π² срок. Π“Π΅Π½ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ программист Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠΎΠ±Π»ΡŽΠ΄Π°Π΅Ρ‚ сроки, ΠΈ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° проста: ΠΎΠ½ ВБЕГДА пытаСтся Π½Π°ΠΉΡ‚ΠΈ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠ΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Π½Π΅ понимая, Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅Π΅ β€” Π²Ρ€Π°Π³ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌΡƒ.

Π’Ρ‚ΠΎΡ€ΠΎΠ΅. ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅Π³ΠΎ качСства. Π“Π΅Π½ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ программист всСгда Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±ΠΈΠ²Π°Ρ‚ΡŒΡΡ Ρ‡Ρ‚ΠΎΠ±Ρ‹ качСство Π±Ρ‹Π»ΠΎ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΌ ΠΈ, ΠΊ соТалСнию, это Π²ΠΎ Π²Ρ€Π΅Π΄ срокам ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ всСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Π’Ρ€Π΅Ρ‚ΡŒΠ΅. По мнСнию гСниального программиста, ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π΅ΡΡ‚ΡŒ дСйствиС Π΅Π³ΠΎ самого, Π° Π½Π΅ всСх участников ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΈ Π΅Π³ΠΎ Π³Π΅Π½ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠ·Π³ Π½Π΅ Ρ‚Π΅Ρ€ΠΏΠΈΡ‚ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ помСняли Π² Π΅Π³ΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ Π±Π΅Π· Π΅Π³ΠΎ Π²Π΅Π΄ΠΎΠΌΠ°.

Π§Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠ΅. Π“Π΅Π½ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ программист Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ, Ссли Π² ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ «КНОПКА» обнаруТиваСтся тСкст «КНОПКО» β€” для Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ° это Π±Π°Π³.

ΠžΡ‚ΡΡŽΠ΄Π° Π³Π»Π°Π²Π½Ρ‹ΠΉ совСт β€” ваша Π·Π°Π΄Π°Ρ‡Π°, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π±Ρ‹Ρ‚ΡŒ профСссионалом, Ρ‚ΠΎ Π±Ρ‹Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Π° Ссли знания ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚, Ρ‚ΠΎ Π±Ρ‹Ρ‚ΡŒ Π΅Ρ‘ Π·Π½Π°Ρ‡ΠΈΠΌΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ. Π’ ΠΏΠΎΠΌΠΎΡ‰ΡŒ β€” ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ вопросы.

Как ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ ΠΎΡ‚ ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ?

По сигнатурС ΠΊΠΎΠ΄Π°. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ ΠΎΡ‚ ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ отличаСтся Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ SOLID ΠΈ всСгда ΠΈΡ… ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΠΉΡ‚Π΅ΡΡŒ.

Π§Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ всСгда ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ?

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

Бколько ΠΈ Ρ‡Π΅ΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ‚Π°Ρ‚ΡŒ вострСбованным (ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠΏΠ»Π°Ρ‡ΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌ) Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ?

ВСкст объявлСния: «НуТСн Π»ΠΈΡ‡Π½Ρ‹ΠΉ Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ Π΄ΠΎ 20 Π»Π΅Ρ‚ с Π½Π°Π²Ρ‹ΠΊΠ°ΠΌΠΈ экспСрта ΠΏΠΎ Ρ€ΡƒΠΊΠΎΠΏΠ°ΡˆΠ½ΠΎΠΌΡƒ бою, ΡƒΠΌΠ΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ€ΡƒΠ±Π΅ΠΆ спСцназа Π“Π Π£ Π·Π° ΠΌΠΈΠ½ΡƒΡ‚Ρƒ Π² Π²ΠΎΠ΄ΠΎΠ»Π°Π·Π½ΠΎΠΌ скафандрС, ΠΏΡ€ΠΈ этом ΠΏΠΎΠ΄ΠΆΠ°Ρ€ΠΈΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ 10 ΠΏΠΈΡ€ΠΎΠΆΠΊΠΎΠ² Π½Π° ΠΎΠ΄Π½ΠΎΠΉ сковородкС». ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ долТностныС обязанности. Но это ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ всС это Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ. Π’ трСбованиях, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΡƒΠΊΠ°Π·Π°Π½ максимум. Π’Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ ΠΈΠ· всСго ΠΊΡ€ΡƒΠ³Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ ΠΈ ΡƒΠΌΠ΅Π΅Ρ‚Π΅, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ артистизма ΠΈ красок, ΠΈ Π²ΠΏΠ΅Ρ€Π΅Π΄ β€” ΡƒΠ±Π΅ΠΆΠ΄Π°Ρ‚ΡŒ Π½Π°ΡˆΠΈΡ… ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠ² ΠΏΠΎ пСрсоналу. Но ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, всС-Ρ‚Π°ΠΊΠΈ ΠΎΡ†Π΅Π½ΠΈΡ‚Π΅ Ρ‚Ρ€Π΅Π·Π²ΠΎ свои знания. А Ρ‚ΠΎ Ρƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ симптом ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«Π― знаю ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎΒ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сразу Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚Π΅ посрСдствСнным Π±Π°Π³Π°ΠΆΠΎΠΌ Π·Π½Π°Π½ΠΈΠΉ. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ссли Ρƒ вас большоС количСство вопросов ΠΈ Π²Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΌΠ°Π»ΠΎ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‚ΠΎ это ΡƒΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, Ρ‡Ρ‚ΠΎ ваш Π±Π°Π³Π°ΠΆ Π·Π½Π°Π½ΠΈΠΉ солидный ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Ρ‚Π΅Π½Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, Π° Π½Π΅ Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°.

Бколько трСбуСтся ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ β€” это ΠΎΡ‡Π΅Π½ΡŒ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎ, Π½ΠΎ Π² любом случаС Π·Π½Π°Π΅Ρ‚ большС Ρ‚ΠΎΡ‚, ΠΊΡ‚ΠΎ большС ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ, ΠΈ, ΠΊΠ°ΠΊ я ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ», ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ такая ΠΎΡ‚Ρ€Π°ΡΠ»ΡŒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ постоянно. Но Π² срСднСм Ρ†ΠΈΡ„Ρ€Ρ‹ Ρ‚Π°ΠΊΠΈΠ΅:

β€’ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ уровня Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° (junior) Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π° 6 мСсяцСв;
β€’ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ уровня Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° (developer) β€” Π·Π° 12-18 мСсяцСв;
β€’ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° (key developer) β€” 2-5 Π»Π΅Ρ‚;
β€’ экспСртного уровня(seignior) β€” ΠΎΡ‚ 7 Π»Π΅Ρ‚ ΠΈ Π²Ρ‹ΡˆΠ΅.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. 250fff78f9d8455dbcd263cf9e63f1ab. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄-250fff78f9d8455dbcd263cf9e63f1ab. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 250fff78f9d8455dbcd263cf9e63f1ab. Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» статСй ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Β«Π±Π΅Π³Π°ΡŽΡ‚Β» Π² Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°Ρ…, Π° Π½Π΅ ΡΠ΅Π½ΡŒΠΎΡ€Π°Ρ….Π‘ Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ?
Π’ качСствС ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° этот вопрос Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ высказываниС Π›Π°ΠΎ-Π¦Π·Ρ‹: Β«Π”Π°ΠΆΠ΅ самоС Π΄ΠΎΠ»Π³ΠΎΠ΅ ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΠ΅ начинаСтся с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ шага».

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

Как ΠΏΠΈΡΠ°Ρ‚ΡŒ чистый ΠΊΠΎΠ΄?

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

Брэм Коэн, Π°Π²Ρ‚ΠΎΡ€ BitTorrent, писал: «Π’ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ³ Π±Ρ‹ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ любой ΠΈΠ΄ΠΈΠΎΡ‚, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ качСство написанного ΠΈΠ΄ΠΈΠΎΡ‚ΠΎΠΌ». И Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, нСсмотря Π½Π° постоянноС ΠΏΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ рядов программистов, качСством ΠΊΠΎΠ΄Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡ…Π²Π°ΡΡ‚Π°Ρ‚ΡŒΡΡ Π½Π΅ всС.

ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°:

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

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

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: Cyanide and Happiness

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

Π‘Ρ‚ΠΎΠΈΡ‚ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ многочислСнных ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΎΠ², Ссли ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ. Если Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ части ΠΊΠΎΠ΄Π° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, стоит ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎΠ± ΠΈΡ… ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΡƒΡΠ»ΠΎΠΆΠ½ΡΡ‚ΡŒ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅. НС стоит ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚ΡŒ вСлосипСды ΠΈ Π·Π°Π³Ρ€ΠΎΠΌΠΎΠΆΠ΄Π°Ρ‚ΡŒ ΠΈΠΌΠΈ ΠΊΠΎΠ΄. МногиС Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ стоят ΠΏΠ΅Ρ€Π΅Π΄ программистами, ΡƒΠΆΠ΅ Π΄Π°Π²Π½ΠΎ Ρ€Π΅ΡˆΠ΅Π½Ρ‹; стоит просто ΠΏΠΎΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡ΡˆΠ΅.

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π½ΡƒΠΆΠ½Ρ‹ Π½Π΅ всСгда, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ класса ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΈΠ»ΠΈ просто ΠΏΠΎΡΡΠ½ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄. Π’ любом случаС, ΠΈΡ… Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΡ… Π±Ρ‹Ρ‚ΡŒ ΠΈ слишком ΠΌΠ½ΠΎΠ³ΠΎ. Они Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, Π° Π½Π΅ ΠΊΠ°ΠΊ Ρƒ Π½Π΅Π΅ это Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚.

Иногда пСрСнос Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π° Π² ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ Π±Π»Π°Π³ΠΈΠΌΠΈ намСрСниями программистов: ΠΌΠ°Π»ΠΎ Π»ΠΈ, ΠΊΠΎΠΌΡƒ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ. НапримСр, это происходит, ΠΊΠΎΠ³Π΄Π° Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ пСрСписываСтся, Π½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΆΠ°Π»ΠΊΠΎ – Π²ΠΎΡ‚ ΠΎΠ½Π° ΠΈ пылится Π² коммСнтариях мСсяцами. Если Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ, Ρ‚ΠΎ это Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

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

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

НС стоит ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ ошибкам с Π½Π΅Π½Π°Π²ΠΈΡΡ‚ΡŒΡŽ ΠΈ яростно Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ с ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠ΅Π»ΠΎΡ‡ΡŒΡŽ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΎΡ‚ Π±Π°Π³ΠΎΠ² Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·Π±Π°Π²Π»ΡΡ‚ΡŒΡΡ, Π½ΠΎ этот процСсс Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ΄Ρ‚ΠΈ Π½Π° ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, ΠΈ программисту. Π­Ρ‚ΠΎ позволяСт ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… ошибок Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ ΠΊΠΎΠ΄Ρƒ Π±ΠΎΠ»Π΅Π΅ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, поэтому стоит Π·Π°ΠΏΠ°ΡΡ‚ΠΈΡΡŒ Ρ‚Π΅Ρ€ΠΏΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ эту Ρ‡Π°ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ПО.

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

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

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

Π­Ρ‚ΠΎ автоматичСская ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΊΠΎΠ΄Π°, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ трСбуСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ статичСского Π°Π½Π°Π»ΠΈΠ·Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π·Π°Ρ‚Ρ€Π°Ρ‚ людСй ΠΈ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΌΠΎΠ³ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ code review. Благодаря этому ΠΌΡ‹ ΡƒΠ΄Π²Π°ΠΈΠ²Π°Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΎΡ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΈ Π΄Π΅Π»Π°Π΅ΠΌ Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΌ.

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

Как Π²Π°ΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄

МнС приходится ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΊΠΎΠ΄. Π­Ρ‚ΠΎ ΠΈ open source, ΠΈ всячСскиС Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ, ΠΈ ΠΊΠΎΠ΄ enterprise ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ИмСнно ΠΎ послСдних я Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ сСгодня ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ.

Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° enterprise ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β€” отстой. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π³Π»ΡŽΡ‡Π°Ρ‚ ΠΈ тормозят, ΠΈΡ… слоТно Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, постоянно ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ. Π­Ρ‚ΠΎ ΠΊΠ°ΠΊ Π±Ρ‹ Π½ΠΈΠΊΠΎΠ³ΠΎ Π½Π΅ удивляСт.

Но ΡƒΠ΄ΠΈΠ²Π»ΡΡŽΡ‚ люди, написавшиС отстойный ΠΊΠΎΠ΄. Π­Ρ‚ΠΈ люди, с Π½Π΅ΠΌΠ°Π»Ρ‹ΠΌ ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ, Π·Π½Π°ΡŽΡ‚ нСсколько языков, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ½ΠΈΠ³, Π·Π½Π°ΡŽΡ‚ ООП, SOLID, Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³, ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ малопонятныС слова. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊΠΈΠ΅, ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· вас, Ρ‡ΠΈΡ‚Π°ΡŽΡ‰ΠΈΡ… этот пост.

ВСория Ρ€Π°Π·Π±ΠΈΡ‚Ρ‹Ρ… ΠΎΠΊΠΎΠ½

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

Π’ послСдствии ΡƒΡ‡Π΅Π½Ρ‹Π΅ Π½Π°Π·Π²Π°Π»ΠΈ это явлСниС β€œΠ’Π΅ΠΎΡ€ΠΈΠ΅ΠΉ Ρ€Π°Π·Π±ΠΈΡ‚Ρ‹Ρ… окон”. Богласно Ρ‚Π΅ΠΎΡ€ΠΈΠΈ, любоС проявлСниС бСспорядка ΠΈΠ»ΠΈ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ Π½ΠΎΡ€ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ людСй Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ…. ВСория ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° нСсколько ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΈ Π΅Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π²ΠΏΠΎΠ»Π½Π΅ достовСрной.

Π•ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ эффСкт. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ порядка ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ порядок.

Как это влияСт Π½Π° ΠΊΠΎΠ΄

Π’ enterprise Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ прСссинг сроков ΠΈ нСопрСдСлСнности Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ Π±Ρ‹Π²Π°Π΅Ρ‚ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ высок, Ρ‡Ρ‚ΠΎ каТСтся ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ β€œΠ±Ρ‹ΡΡ‚Ρ€ΠΎ ΠΈ грязно” – Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π»ΡƒΡ‡ΡˆΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, Ρ‡Π΅ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ. ΠœΠΎΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ β€œΠ±Ρ‹ΡΡ‚Ρ€ΠΎ ΠΈ грязно” Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎ всСму ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ, ΠΊΠ°ΠΊ ΠΏΡƒΡ‚Π΅ΠΌ clipboard inheritance (aka copy-paste), Ρ‚Π°ΠΊ ΠΈ Π·Π° счСт эффСкта Ρ€Π°Π·Π±ΠΈΡ‚Ρ‹Ρ… ΠΎΠΊΠΎΠ½.

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΊΡ‚ΠΎΡ€ Π²Π»ΠΈΡΡŽΡ‰ΠΈΠΉ Π½Π° качСство ΠΊΠΎΠ΄Π° – ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π΅ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ ΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅. Из-Π·Π° этого Π² ΠΊΠΎΠ΄Π΅ часто ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ…Π°ΠΊΠΈ ΠΈ Π½Π΅Π»Π΅ΠΏΡ‹Π΅ workaround-Ρ‹. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Ρ‡Ρ‚ΠΎ эти Ρ…Π°ΠΊΠΈ ΠΈ Π΅ΡΡ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. Π”Π°ΠΆΠ΅ ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚, люди ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ…Π°ΠΊΠΈ. ΠšΡΡ‚Π°Ρ‚ΠΈ эти Ρ…Π°ΠΊΠΈ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΏΠ°Π΄Π°Ρ‚ΡŒ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ Ρ‡Π΅Ρ€Π΅Π· Ρ„ΠΎΡ€ΡƒΠΌΡ‹, Π±Π»ΠΎΠ³ΠΈ ΠΈΠ»ΠΈ pastebin ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒΡΡ Π΄Π°Π»Π΅ΠΊΠΎ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ ΠΎΠ΄Π½ΠΎΠ³ΠΎ прилоТСния.

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

Π’ open source ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ²ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ‚Π°ΠΊΠΎΠ΅ встрСчаСтся Ρ€Π΅ΠΆΠ΅. Π’Π°ΠΌ большС слСдят Π·Π° качСством ΠΈ мСньшС прСссинг сроков.

Код ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ для людСй

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

Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½, Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΡ‡Π΅Π½ΡŒ ясно Π²Ρ‹Ρ€Π°ΠΆΠ°Ρ‚ΡŒ намСрСния. К соТалСнию β€œΠ±Ρ‹ΡΡ‚Ρ€Ρ‹Π΅ ΠΈ грязныС” способы Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π±ΡŒΡŽΡ‚ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΏΠΎ понимаСмости ΠΊΠΎΠ΄Π°. Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° осознанно откладываСтся Π΄ΠΎ Π»ΡƒΡ‡ΡˆΠΈΡ… Π²Ρ€Π΅ΠΌΠ΅Π½, ΠΊΠΎΠ³Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ°ΡƒΠ·Π° Ρ‡Ρ‚ΠΎΠ±Ρ‹ провСсти Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³. Π’Π΅ самыС Π»ΡƒΡ‡ΡˆΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π° Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π½Π°ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚, Π° ΠΊΠΎΠ΄ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π΄ΠΎΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ сразу ΠΆΠ΅ послС попадания Π² source control.

Π”Π°ΠΆΠ΅ Ссли Π²Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π΄ΠΎΠ²ΠΎΠ»ΡŒΠ½Ρ‹ свои ΠΊΠΎΠ΄ΠΎΠΌ (Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв программисты свои ΠΊΠΎΠ΄ΠΎΠΌ Π΄ΠΎΠ²ΠΎΠ»ΡŒΠ½Ρ‹), Ρ‚ΠΎ ΠΏΠΎΠ΄ΡƒΠΌΠ°ΠΉΡ‚Π΅ ΠΎ Ρ‚ΠΎΠΌ ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ваш ΠΊΠΎΠ΄ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ (Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв программисты Π½Π΅Π΄ΠΎΠ²ΠΎΠ»ΡŒΠ½Ρ‹ Ρ‡ΡƒΠΆΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ).

ΠŸΡ€ΠΈΠ²Π΅Ρ€ΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒ качСству

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

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

Ясно Π²Ρ‹Ρ€Π°ΠΆΠ°ΠΉΡ‚Π΅ намСрСния Π² своСм ΠΊΠΎΠ΄Π΅, сводитС ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΡƒ Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Π΅ нСявныС аспСкты. НС Π½Π°Π΄ΠΎ ΡΡ‚Ρ€Π΅ΠΌΠΈΡ‚ΡŒΡΡ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ максимально Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½Ρ‹ΠΌ, ΡΡ‚Ρ€Π΅ΠΌΠΈΡ‚Π΅ΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ максимально понятным.

Если Π²Π°ΠΌ приходится ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄, Ρ‚ΠΎ Π½Π΅ создавайтС Ρ…Π°ΠΊΠΎΠ². ΠŸΠΎΡ‚Ρ€Π°Ρ‚ΡŒΡ‚Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ. БэкономитС Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅. Если ΠΆΠ΅ ΠΊΠΎΠ΄ совсСм ΠΏΠ»ΠΎΡ…ΠΎΠΉ, Π±Ρ‹Π» сдСлан β€œΠ±Ρ‹ΡΡ‚Ρ€ΠΎ ΠΈ грязно” ΠΈ оброс Ρ…Π°ΠΊΠ°ΠΌΠΈ, Ρ‚ΠΎ просто Π²Ρ‹ΠΊΠΈΠ½ΡŒΡ‚Π΅ Π΅Π³ΠΎ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡˆΠΈΡ‚Π΅. Волько Π½Π΅ Π½Π°Π΄ΠΎ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ всС. Π£Ρ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ: программист ΠΏΠΈΡˆΠ΅Ρ‚ 40-60 ΠΎΡ‚Π»Π°ΠΆΠ΅Π½Π½Ρ‹Ρ… строк ΠΊΠΎΠ΄Π° Π² дСнь Π² Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ‚Π΅ΠΌΠΏΠ΅ ΠΈ 120-200 Π² ускорСнном (высокая концСнтрация, чСткая Ρ†Π΅Π»ΡŒ, понятно Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ).

Если Π²Ρ‹ сами ΠΏΠΈΡˆΠ΅Ρ‚Π΅ β€œΠ±Ρ‹ΡΡ‚Ρ€ΠΎ ΠΈ грязно”, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ для уточнСния Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ, Ρ‚ΠΎ Π²Ρ‹ΠΊΠΈΠ½ΡŒΡ‚Π΅ ΠΊΠΎΠ΄ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡˆΠΈΡ‚Π΅ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ сразу послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ваш ΠΊΠΎΠ΄ сдСлаСт своС Π΄Π΅Π»ΠΎ.

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

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

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ свой ΠΊΠΎΠ΄. ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ постоянно Π² процСссС написания. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ β€œΠΏΠΎΡ‚ΠΎΠΌβ€ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ наступаСт.

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

Π­ΠΊΠΎΠ½ΠΎΠΌΠΈΠΊΠ° качСства ΠΊΠΎΠ΄Π°

ВсС Π·Π½Π°ΠΊΠΎΠΌΡ‹ с ΠΊΡ€ΠΈΠ²ΠΎΠΉ стоимости ошибки:
Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. afbf9b05fcdda39edf41b683691015ae. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄-afbf9b05fcdda39edf41b683691015ae. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° afbf9b05fcdda39edf41b683691015ae. Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» статСй ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Β«Π±Π΅Π³Π°ΡŽΡ‚Β» Π² Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°Ρ…, Π° Π½Π΅ ΡΠ΅Π½ΡŒΠΎΡ€Π°Ρ….

Ошибка найдСнная ΠΈ устранСнная Π½Π° этапС кодирования Π² 10 Ρ€Π°Π· дСшСвлС, Ρ‡Π΅ΠΌ ошибка найдСнная ΠΏΡ€ΠΈ тСстировании ΠΈ Π² 100 Ρ€Π°Π· дСшСвлС ошибки, Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠΉ Π² production. Π’ истории Π΅ΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ошибок, исправлСниС ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… обошлось Π² дСсятки тысяч Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ².

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ ΡƒΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ошибки Π½Π° этапС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ усилиями самих Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄? Π‘Ρ‡ΠΈΡ‚Π°Π΅ΠΌ Π·Π²Ρ‘Π·Π΄Ρ‹

Никогда Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π½Π΅ Π±Ρ‹Π»ΠΎ, ΠΈ Π²ΠΎΡ‚ ΠΎΠΏΡΡ‚ΡŒ! ΠžΠΏΡΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΉ Π½Π΅Π΄Π΅Π»Π΅ Π½Π° Π₯Π°Π±Ρ€Π΅ появился (ΠΈ Π±Ρ‹Π» ΠΎΡ‡Π΅Π½ΡŒ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½) пост, Π½Ρ‹Π½Π΅ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ, ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ ΠΈ Ρ‡Π΅ΠΌ ΠΎΠ½ отличаСтся ΠΎΡ‚ ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ. ЯндСкс подсказываСт, Ρ‡Ρ‚ΠΎ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΉ ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌ (Π²Π°Ρ€ΠΈΠ°Π½Ρ‚: ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΌ, идСальном, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ, чистом, грязном, ΠΏΠ»ΠΎΡ…ΠΎΠΌ ΠΈ Ρ‚.Π΄.) ΠΊΠΎΠ΄Π΅ здСсь ΡƒΠΆΠ΅ дСсятки ΠΈ сотни, ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ½ΠΈ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ Π½Π° протяТСнии ΠΌΠ½ΠΎΠ³ΠΈΡ… Π»Π΅Ρ‚, всСгда Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ, Π½ΠΎ ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠΌΡƒ мнСнию Π½Π° этот счёт Ρ‚Π°ΠΊ ΠΈ Π½Π΅ ΠΏΡ€ΠΈΡˆΠ»ΠΈ.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. 876e61980162150068f23d1d1704df44. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄-876e61980162150068f23d1d1704df44. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 876e61980162150068f23d1d1704df44. Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» статСй ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Β«Π±Π΅Π³Π°ΡŽΡ‚Β» Π² Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°Ρ…, Π° Π½Π΅ ΡΠ΅Π½ΡŒΠΎΡ€Π°Ρ….Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ тянСт ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π½Π° ΠΎΠ΄Π½Ρƒ Π·Π²Π΅Π·Π΄Ρƒ πŸ™‚

Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π² настоящСС врСмя распространён повсСмСстно. ΠŸΡ€ΠΈΡ‡ΠΈΠ½ этому нСсколько, Π²ΠΎΡ‚ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Π΅:

Массовая цифровизация, ΠΈΠ·-Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ тСхзадания программистам ставят люди, Π΄Π°Π»Ρ‘ΠΊΠΈΠ΅ ΠΎΡ‚ IT (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ Π·Π°Π²ΠΎΠ΄ΠΎΠ²) ΠΈ ΠΎΠ½ΠΈ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ качСство ΠΊΠΎΠ΄Π°.

ВысокиС Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Ρ‹ Π² IT Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°ΡŽΡ‚ всСх-всСх-всСх, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Ρ€ΡƒΠ΄ΠΎΡƒΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ, пройдя курсы «Π²Π°ΠΉΡ‚ΠΈ-Π²Π°ΠΉΡ‚ΠΈ Π·Π° мСсяц» ΠΈ имСя ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π½Π°Π²Ρ‹ΠΊΠΈ.

БправСдливости Ρ€Π°Π΄ΠΈ: Π½Π΅ всСгда это ΠΏΠ»ΠΎΡ…ΠΎ. Если Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠ°Π»ΠΎΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Π°Ρ, Ρ‚ΠΎ Π΅Ρ‘ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ особо Π½Π΅Π·Π°Ρ‡Π΅ΠΌ (ΠΈ Ρ‚Π°ΠΊ Π»Π΅Ρ‚Π°Ρ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚, Π½Ρƒ вСдь ΠΏΡ€Π°Π²Π΄Π° ΠΆΠ΅!). Π’Π°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΈΡˆΡƒΡ‚ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ программисты ΠΈ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ обрСтСния ΠΎΠΏΡ‹Ρ‚Π° пСрСходят Π½Π° ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π²Ρ‹ΡˆΠ΅.

Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ просто Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π½ΠΎ Π΅Ρ‰Ρ‘ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ достаточно быстро. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ этот ΠΊΠΎΠ΄ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΠΎ процСссорной Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ мощности. Одно ΠΈΠ· Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ:

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° считаСтся эффСктивной ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ссли врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΎΠΏΠΎΡ€Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ количСству элСмСнтов ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΠ²ΡˆΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… N, Ρ‚.Π΅. ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ N Π² k Ρ€Π°Π· врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ Π² k Ρ€Π°Π·.

На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° опрСдСляСтся Π½Π΅ ΠΏΠΎ этому ΡƒΡ‡Π΅Π±Π½ΠΎ-Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΎΡ‡Π½ΠΎΠΌΡƒ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΡŽ, Π° ΠΏΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ цСлям ΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π΄Π°Π½Π° ΠΊΠ°ΠΊ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ («Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ N Π½Π΅ большС k»), Ρ‚Π°ΠΊ ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ («ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠΊΠ½ΠΎ Π½Π΅ дольшС 0,5 сСкунды») ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ («Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 80% ΠΎΠΏΡ€ΠΎΡˆΠ΅Π½Π½Ρ‹Ρ… согласились, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° открываСтся ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ»).

Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ задСйствуСт условно нСбольшоС количСство памяти ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ процСссорной мощности, Π½ΠΎ ΠΈ ΠΏΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти.

Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сам ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΡ‘ΠΌ. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ ΠΈ ΠΏΠΎ процСссору, ΠΈ ΠΏΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²ΠΊΠ΅, ΠΈ ΠΏΠΎ Π½Π°ΠΊΠΎΠΏΠΈΡ‚Π΅Π»ΡŽ.

ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ программист ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ слСгка ΡƒΡΠ΅Ρ‡ΡŒ ΠΎΠ±ΡŠΡ‘ΠΌ ΠΊΠΎΠ΄Π°: Π·Π°ΠΌΠ΅Π½ΠΈΠ² ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ куски Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠ΄Π½ΠΎΠ±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Ρ‡Π΅Ρ€Π΅Π· #define Π·Π°Π±Π»Π°Π³ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ всС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ языка Π² Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠ΅, Ссли это оказываСтся Π²Ρ‹Π³ΠΎΠ΄Π½ΠΎ. Однако всё это, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, баловство, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ приносит ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈ Π² Ρ†Π΅Π»ΠΎΠΌ скорСС Π²Ρ€Π΅Π΄ΠΈΡ‚. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΏΡƒΡ‚Ρ‘ΠΌ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, трСбуСтся ΠΎΡ‡Π΅Π½ΡŒ высокая квалификация.

Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½, Π½ΠΎ ΠΈ прСкрасСн: Π»Π΅Π³ΠΊΠΎ Ρ‡ΠΈΡ‚Π°Π΅ΠΌ, красиво ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½, Π² Π½ΡƒΠΆΠ½Ρ‹Ρ… мСстах ΠΏΡ€ΠΎΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½, понятСн Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠΌ поколСниям программистов. Π’Ρ‹ΡΡˆΠΈΠΉ ΠΏΠΈΠ»ΠΎΡ‚Π°ΠΆ ΠΎΡ‚ ΠΌΠΈΡ€Π° IT. Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, ΠΊΠ°ΠΊ говорится, излишни.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

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

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

Do good code: 8 ΠΏΡ€Π°Π²ΠΈΠ» Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ всСм, ΠΊΡ‚ΠΎ обучался ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, извСстна ΠΊΠ½ΠΈΠ³Π° Π‘Ρ‚ΠΈΠ²Π° МакконнСлла Β«Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄Β». Она всСгда ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅, ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго, Π²Π½ΡƒΡˆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½ΠΎΠΉ (ΠΎΠΊΠΎΠ»ΠΎ 900 страниц). К соТалСнию, Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ²Π°, Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° впСчатлСния этим ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ. А зря. Π’ дальнСйшСй ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ программисты ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ практичСски со всСми ситуациями, описанными Π² ΠΊΠ½ΠΈΠ³Π΅, ΠΈ приходят ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ ΠΏΡƒΡ‚Ρ‘ΠΌ ΠΊ Ρ‚Π΅ΠΌ ΠΆΠ΅ самым Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ. Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π±ΠΎΠ»Π΅Π΅ тСсноС знакомство ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя ΠΈ силы. ΠœΡ‹ Π² GeekBrains придСрТиваСмся комплСксного ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° Π² ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ, поэтому ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ для ΡΠ»ΡƒΡˆΠ°Ρ‚Π΅Π»Π΅ΠΉ Π²Π΅Π±ΠΈΠ½Π°Ρ€ ΠΏΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ создания Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» статСй ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Β«Π±Π΅Π³Π°ΡŽΡ‚Β» Π² Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°Ρ…, Π° Π½Π΅ ΡΠ΅Π½ΡŒΠΎΡ€Π°Ρ….

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ΅Π½ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΠ³Π΄Π° всё ΠΈ Ρ‚Π°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚?

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

БущСствуСт мноТСство извСстных ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΊ критСриям качСства ΠΊΠΎΠ΄Π°, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ ΡƒΠ·Π½Π°Ρ‘Ρ‚ практичСски любой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ. НапримСр, Π΅ΡΡ‚ΡŒ программисты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° проСктирования KISS (Keep It Simple, Stupid! β€” Π”Π΅Π»Π°ΠΉ это ΠΏΡ€ΠΎΡ‰Π΅, Ρ‚ΡƒΠΏΠΈΡ†Π°!). Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²ΠΏΠΎΠ»Π½Π΅ справСдлив ΠΈ заслуТиваСт уваТСния, ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° β€” простоту ΠΈ ΡΡΠ½ΠΎΡΡ‚ΡŒ. Однако простота Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ β€” порядок Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ упрощСния. ΠšΡ€ΠΎΠΌΠ΅ простоты, сущСствуСт Π΅Ρ‰Ρ‘ нСсколько нСслоТных ΠΏΡ€Π°Π²ΠΈΠ». И ΠΎΠ½ΠΈ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ ряд Π·Π°Π΄Π°Ρ‡.

8 ΠΏΡ€Π°Π²ΠΈΠ» Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΠΎ вСрсии GeekBrains

Π‘ΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ Π΅Π΄ΠΈΠ½Ρ‹ΠΉ Code style. Если программист ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ, особСнно ΠΊΡ€ΡƒΠΏΠ½ΡƒΡŽ, Ρ‚ΠΎ Ρ‡Π°Ρ‰Π΅ всСго Π΅Π³ΠΎ знакомят с ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ оформлСния ΠΊΠΎΠ΄Π° Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ (соглашСниС ΠΏΠΎ code style). Π­Ρ‚ΠΎ Π½Π΅ случайный ΠΊΠ°ΠΏΡ€ΠΈΠ· работодатСля, Π° ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°.

Π’ΠΎΡ‚ нСсколько ΠΎΠ±Ρ‰ΠΈΡ… ΠΏΡ€Π°Π²ΠΈΠ», с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ:

ΡΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ пСрСносы Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Ρ… скобок ΠΈ отступы β€” это Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ восприятиС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π°
ΡΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ β€” части ΠΎΠ΄Π½ΠΎΠ³ΠΎ запроса ΠΈΠ»ΠΈ условия Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ отступС

ΡΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ разрядку β€” ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Ρ‚Π°ΠΌ, Π³Π΄Π΅ ΠΎΠ½ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‚ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°; особСнно это Π²Π°ΠΆΠ½ΠΎ Π² составных условиях, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, условиях Ρ†ΠΈΠΊΠ»Π°.

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… срСдах Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° форматирования ΠΊΠΎΠ΄Π°, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ² настройки ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ (доступно Π² Visual Studio). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρƒ всСх программистов ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° автоматичСски получаСтся ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ восприятиС. Π˜Π·Π²Π΅ΡΡ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ достаточно Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΡƒΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ послС Π΄ΠΎΠ»Π³ΠΈΡ… Π»Π΅Ρ‚ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΈ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ°Ρ‚ΡŒ ΠΊ Π½ΠΎΠ²Ρ‹ΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ. Однако Π² любой ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ code style β€” это Π·Π°ΠΊΠΎΠ½, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΡƒΠΊΠΎΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ.

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

НапримСр, Π² ΠΊΠΎΠ΄Π΅ Π΅ΡΡ‚ΡŒ строка:

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, ΠΎΠ½Π° Π½Π΅ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ошибок Π² Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΈ Π΅Ρ‘ смысл Π½Π΅ всСм понятСн. Π“ΠΎΡ€Π°Π·Π΄ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Π½Π΅ ΠΏΠΎΠ»Π΅Π½ΠΈΡ‚ΡŒΡΡ ΠΈ сразу Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Иногда магичСскиС числа Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΏΡ€ΠΈ использовании общСпринятых констант, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ записи числа Ο€. Допустим, Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π±Ρ‹Π»ΠΎ внСсСно:

Π§Ρ‚ΠΎ Ρ‚ΡƒΡ‚ ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ? А ΠΏΠ»ΠΎΡ…ΠΎΠ΅ Π΅ΡΡ‚ΡŒ. НапримСр, Ссли Π² Ρ…ΠΎΠ΄Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ понадобится ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ расчёт с высокой Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ, придётся ΠΈΡΠΊΠ°Ρ‚ΡŒ всС вхоТдСния константы Π² ΠΊΠΎΠ΄Π΅, Π° это Ρ‚Ρ€Π°Ρ‚Π° Ρ‚Ρ€ΡƒΠ΄ΠΎΠ²ΠΎΠ³ΠΎ рСсурса. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π»ΡƒΡ‡ΡˆΠ΅ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊ:

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» статСй ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Β«Π±Π΅Π³Π°ΡŽΡ‚Β» Π² Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°Ρ…, Π° Π½Π΅ ΡΠ΅Π½ΡŒΠΎΡ€Π°Ρ….Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ осмыслСнныС ΠΈΠΌΠ΅Π½Π° для ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, классов. ВсСм программистам извСстСн Ρ‚Π΅Ρ€ΠΌΠΈΠ½ β€œΠΎΠ±Ρ„ΡƒΡΠΊΠ°Ρ†ΠΈΡ кода” β€” ΡΠΎΠ·Π½Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π°ΠΏΡƒΡ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ΄Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прилоТСния-обфускатора. Она дСлаСтся с Ρ†Π΅Π»ΡŒΡŽ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΈ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π² нСвнятный Π½Π°Π±ΠΎΡ€ символов, ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, мСняСт ΠΈΠΌΠ΅Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ проч… К соТалСнию, случаСтся Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ ΠΈ Π±Π΅Π· обфускации выглядит Π·Π°ΠΏΡƒΡ‚Π°Π½Π½ΠΎ β€” ΠΈΠΌΠ΅Π½Π½ΠΎ Π·Π° счёт бСссмыслСнных ΠΈΠΌΡ‘Π½ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ: var_3698, myBestClass, NewMethodFinal ΠΈ Ρ‚.д… Π­Ρ‚ΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, Π½ΠΎ ΠΈ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ бСсконСчному количСству ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π². ΠœΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅ΠΌ, ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² β€” Π΅Ρ‘ имя Π±ΡƒΠ΄Π΅Ρ‚ само Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π΄Π΅Π»Π°Π΅Ρ‚.

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

НапримСр, Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΠΊΠΎΠ΄ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°:

Из коммСнтария Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ понятно, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄. Но ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ нСясно, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ x.a ΠΈ x.n. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ внСсти измСнСния Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. a90286361a28406cbf36a8e73aa47ec7. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄-a90286361a28406cbf36a8e73aa47ec7. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° a90286361a28406cbf36a8e73aa47ec7. Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» статСй ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Β«Π±Π΅Π³Π°ΡŽΡ‚Β» Π² Π΄ΠΆΡƒΠ½ΠΈΠΎΡ€Π°Ρ…, Π° Π½Π΅ ΡΠ΅Π½ΡŒΠΎΡ€Π°Ρ….

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

Для ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ этих ΠΏΡ€Π°Π²ΠΈΠ» Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° ΠΈ создадим ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²:

И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, скроСм Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°:

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

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ вставляСм ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π° Π²Ρ…ΠΎΠ΄Π΅ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ null.

Π Π΅Π°Π»ΠΈΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ наслСдования Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ «являСтся». Π’ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях – композиция. ΠšΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΡ являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ΠΎΠ², Π½Π°Ρ†Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½ΠΈΠ΅ восприятия ΠΊΠΎΠ΄Π° ΠΈ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ наслСдования, Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ инкапсуляции. Допустим, Ρƒ вас Π΅ΡΡ‚ΡŒ класс Π ΡƒΠ»ΡŒ ΠΈ класс КолСсо. Класс ΠΠ²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ наслСдник класса-ΠΏΡ€Π΅Π΄ΠΊΠ° Π ΡƒΠ»ΡŒ, Π½ΠΎ вСдь ΠΠ²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŽ Π½ΡƒΠΆΠ½Ρ‹ ΠΈ свойства класса КолСсо.

БоотвСтствСнно, программист Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΏΠ»ΠΎΠ΄ΠΈΡ‚ΡŒ наслСдованиС. А вСдь Π΄Π°ΠΆΠ΅ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΎΠ±Ρ‹Π²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ класс ΠΠ²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ β€” это композиция элСмСнтов. Допустим, Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΠ³Π΄Π° Π½ΠΎΠ²Ρ‹ΠΉ класс создаётся с использованиСм наслСдования (класс ScreenElement наслСдуСт поля ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса Coordinate ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ этот класс):

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

ΠžΡ‚Π΄Π΅Π»ΡΠΉΡ‚Π΅ интСрфСйс ΠΎΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π›ΡŽΠ±ΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ класс состоит ΠΈΠ· интСрфСйса (Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ доступно ΠΏΡ€ΠΈ использовании класса ΠΈΠ·Π²Π½Π΅) ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ (ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹). Π’ ΠΊΠΎΠ΄Π΅ интСрфСйс Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»Ρ‘Π½ ΠΎΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠ°ΠΊ для соблюдСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² ООП, инкапсуляции, Ρ‚Π°ΠΊ ΠΈ для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠ΄Π°.

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

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

Для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ воспринимаСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Ρ‡Π΅Ρ€Π΅Π· Π²ΠΈΠ΄Π΅ΠΎ ΠΈ Ρ…ΠΎΡ‡Π΅Ρ‚ ΡƒΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ Π΄Π΅Ρ‚Π°Π»ΠΈ Π²Π΅Π±ΠΈΠ½Π°Ρ€Π° β€” видСовСрсия:

Π”Ρ€ΡƒΠ³ΠΈΠ΅ наши Π²Π΅Π±ΠΈΠ½Π°Ρ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ здСсь.

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

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

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