Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Чистый ΠΊΠΎΠ΄: ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΠΈ слСдствия

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. . Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° . Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArt

Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArt

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

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄?

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ чистый ΠΈ систСма спроСктирована Π³Ρ€Π°ΠΌΠΎΡ‚Π½ΠΎ, Π»Π΅Π³ΠΊΠΎΠ³ΠΎ чтСния ΠΊΠΎΠ΄Π° нСдостаточно. Он Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ±Π»Π°Π΄Π°Ρ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ качСствами:

Π‘Ρ‚ΠΎΠΈΡ‚ Π»ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ чистый ΠΊΠΎΠ΄?

ΠžΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ стоит! Но Π½Π΅ всСгда ΠΈ Π½Π΅ Π²Π΅Π·Π΄Π΅ стоит ΡƒΠ΄Π΅Π»ΡΡ‚ΡŒ чистотС слишком ΠΌΠ½ΠΎΠ³ΠΎ внимания.

НС стоит Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΎ цСлСсообразности ΠΈ срокС ΠΆΠΈΠ·Π½ΠΈ вашСго ΠΊΠΎΠ΄Π°. НапримСр, Ссли ΠΏΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ стоит Π·Π°Π΄Π°Ρ‡Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ β€” PoC (Proof of concept), ΠΈ Π²Ρ‹ Π΄ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ стСк Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ выполняСт ΠΏΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ, ваш ΠΊΠΎΠ΄ станСт Π½Π΅Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½ ΡƒΠΆΠ΅ Ρ‡Π΅Ρ€Π΅Π· нСдСлю ΠΈΠ»ΠΈ Π΄Π²Π΅. НС стоит Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ силы Π½Π° ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΠ΅ этого Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°.

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

Π§Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ваш ΠΊΠΎΠ΄?

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. fsjgzaluqud0uqfnqquxkg7 9uo. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-fsjgzaluqud0uqfnqquxkg7 9uo. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° fsjgzaluqud0uqfnqquxkg7 9uo. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArt

Бамоорганизация

Рассмотрим нСсколько Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… способов ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ качСство ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡƒΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ любого уровня.

НС ΡΠΏΠ΅ΡˆΠΈΡ‚Π΅ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ Π² Π»ΠΎΠ±. Π—Π°Π΄Π°Π²Π°ΠΉΡ‚Π΅ вопросы ΡΡ‚Π°Ρ€ΡˆΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈ самому сСбС. ВсСгда Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π½ΠΎ-ΡΠ»Π΅Π΄ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ связь Ρ‚Π΅Ρ… ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ. Π₯ΠΎΡ€ΠΎΡˆΠΎ понимая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Π²Ρ‹ смоТСтС эффСктивно Π΅Π΅ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ.

Π›ΡŽΠ±ΠΎΠΉ ΠΎΠΏΡ‹Ρ‚ Π»ΡƒΡ‡ΡˆΠ΅, Ρ‡Π΅ΠΌ Π΅Π³ΠΎ отсутствиС.

Командная Ρ€Π°Π±ΠΎΡ‚Π°

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π·Π°Π΄Π°Ρ‡ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅. ΠžΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π·Π° качСство ΠΌΠ΅ΠΆΠ΄Ρƒ Π΅Π΅ участниками. Π§Π΅ΠΌ большС ΠΊΠΎΠΌΠ°Π½Π΄Π°, Ρ‚Π΅ΠΌ слоТнСС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π² Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌ состоянии. Рассмотрим нСсколько ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² удСрТания ΠΊΠΎΠ΄Π° Π² Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… условиях.

Π’ΠΎ врСмя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ нСсколько Π²Π΅Ρ‰Π΅ΠΉ:

Π‘ΡƒΡ‚ΡŒ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° позволяСт быстро ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ мноТСство ΠΎΡ‚Π·Ρ‹Π²ΠΎΠ² ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ состоянии ΠΊΠΎΠ΄Π°.

НСпрСрывная интСграция Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ слСдуСтС Π΄Π²ΡƒΠΌ простым ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ:

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

Π‘ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ список соглашСний ΠΎ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚Π΅ Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒΡΡ, соглашСния ΠΎΠ± ΠΈΠΌΠ΅Π½Π°Ρ… ΠΈ Ρ‚. Π΄. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΏΡ€Π°Π²ΠΈΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² этот список, Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ. ΠŸΡ€ΠΎΡΡ‚ΠΎ Π΄Π΅Π»Π°ΠΉΡ‚Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ для вас ΠΈ вашСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. НС ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π² список соглашСний, Ссли ΠΊΠΎΠΌΠ°Π½Π΄Π΅ это ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚. Π­Ρ‚ΠΎ ΠΆΠ΅ касаСтся ΠΈ удалСния соглашСний ΠΈΠ· списка.

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

Π§Π΅ΠΌ мСньшС ошибок Π² ΠΊΠΎΠ΄Π΅, Ρ‚Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ Π΅Π³ΠΎ качСство. Π’Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ тСстированиС ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ критичСскиС ошибки ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π·Π°Π΄ΡƒΠΌΠ°Π½ΠΎ.

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

НаличиС ошибок Π² вашСм ΠΊΠΎΠ΄Π΅, вСроятно, Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π°Π½Π°Π»ΠΈΠ· ΠΈ способ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ этих ошибок ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Ρ‹. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ свои Π½Π°Π²Ρ‹ΠΊΠΈ, Π²Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° собствСнных ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ….

Когда Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка, ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π΅Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… вопросов:

Π•ΡΡ‚ΡŒ нСсколько ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для количСствСнной ΠΎΡ†Π΅Π½ΠΊΠΈ качСства вашСго ΠΊΠΎΠ΄Π°. Π‘ Ρ‚Π°ΠΊΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ Π»Π΅Π³ΠΊΠΎ справляСтся SonarQube. Он с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Π°ΠΆΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ:

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ тСстировании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Она ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ исходного ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π² процСссС тСстирования. Π—Π°Π΄Π°ΠΉΡ‚Π΅ ΠΏΠ»Π°Π½ΠΊΡƒ, Π½ΠΈΠΆΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π½ΠΎΠ΅ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π²Π°ΡˆΠΈΡ… тСстов Π½Π΅ опускаСтся.

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

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

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

Грязный, чистый, устрСмлённый

Грязный

Π”Π°Π²Π°ΠΉΡ‚Π΅ вмСстС поразмыслим β€” Ρ‡Ρ‚ΠΎ ΠΆΠ΅ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄, ΠΈ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠ΄ грязный? Или, ΠΊΠ°ΠΊ говорят Π°ΠΌΠ΅Ρ€ΠΈΠΊΠ°Π½Ρ†Ρ‹ – Β«hairy codeΒ», Ρ‚.Π΅. волосатый?

Π§Π΅ΠΌ чистый ΠΊΠΎΠ΄ отличаСтся ΠΎΡ‚ грязного – ΠΈΠ»ΠΈ, ΠΊΠ°ΠΊ говорят Π² этих Π½Π°ΡˆΠΈΡ… ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°Ρ…, ΠΎΡ‚ Β«Π³ΠΎΠ²Π½ΠΎΠΊΠΎΠ΄Π°Β»? Π”Π° ΠΈ Π½ΡƒΠΆΠ΅Π½ Π»ΠΈ ΠΎΠ½ Π²ΠΎΠΎΠ±Ρ‰Π΅, этот чистый ΠΊΠΎΠ΄?
Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. b857003277e1b489c85c57363b6aada4. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-b857003277e1b489c85c57363b6aada4. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° b857003277e1b489c85c57363b6aada4. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArt

Π”Π°Π²Π°ΠΉΡ‚Π΅ сначала разбСрёмся с опрСдСлСниями.

МнС каТСтся, Ρ‡Ρ‚ΠΎ Π΄Π°Ρ‚ΡŒ Ρ‡Ρ‘Ρ‚ΠΊΠΎΠ³ΠΎ опрСдСлСния «чистому» ΠΊΠΎΠ΄Ρƒ просто Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠžΡ‚Ρ‡Π°ΡΡ‚ΠΈ это – ΠΊΠ°ΠΊ с красотой: ΡΠΌΠΎΡ‚Ρ€ΠΈΡˆΡŒ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ, ΠΈΠ»ΠΈ Ρ‚Π°ΠΌ ΡΠΊΡƒΠ»ΡŒΠΏΡ‚ΡƒΡ€Ρƒ – ΠΈ видишь: Π΄Π°, красива. Или, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΡƒΡ€ΠΎΠ΄Π»ΠΈΠ²Π°.

Π”Π°, ΠΌΡ‹ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠ΅ закономСрности, скаТСм, Π² Π»ΠΈΡ†Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ красивыми. Но Π³ΠΎΡ‚ΠΎΠ²Ρ‹ Π»ΠΈ ΠΌΡ‹ Π΄Π°Ρ‚ΡŒ Ρ‡Ρ‘Ρ‚ΠΊΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ красотС? Π”ΡƒΠΌΠ°ΡŽ, Π½Π΅Ρ‚.

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

И, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΅ΡΡ‚ΡŒ свои ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ «красоты ΠΊΠΎΠ΄Π°Β». Π‘Π²ΠΎΠΉ, Ρ‚Π°ΠΊ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, вкус.

Но, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΎΠ±Ρ‰ΠΈΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ссли ΠΈ спорят, Ρ‚ΠΎ вяло ΠΈ ΡΠΎΠ³Π»Π°ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΠΊΠΈ. НС ΠΎ сути, Π° ΠΎΠ± ΠΎΠ±Ρ€Π°ΠΌΠ»Π΅Π½ΠΈΠΈ.
Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΈΡ… ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ.

Π›Π΅Π³ΠΊΠΎ читаСтся ΠΈ понимаСтсяЗапутан, Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π΅Π½, Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ
Π›Π΅Π³ΠΊΠΎ поддаётся измСнСниямЗакостСнСл Π² своих Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… связях; ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ стоит Π½Π΅ΠΈΠΌΠΎΠ²Π΅Ρ€Π½Ρ‹Ρ… усилий ΠΈ ΠΆΠ΅Ρ€Ρ‚Π²
ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½, Π»ΠΈΠ±ΠΎ встроСн ΠΊΡƒΠ΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ модуляДля Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ пСрСписывания, для встраивания – ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΎΠΊ
ΠŸΠΎΠ΄Π΄Π°Ρ‘Ρ‚ΡΡ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ протСстирован, лишь ΠΊΠ°ΠΊ Β«Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΉ ящик»

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ спор ΠΎ Β«Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈΒ» ΠΈΠ»ΠΈ Β«ΠΏΠΎΠ½ΠΈΠΌΠ°Π±Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈΒ» ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ совсСм Π½Π΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹.

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

А ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ – ΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΊΠΎΠ²Ρ‹Ρ€ΡΡ‚ΡŒ ООП ΠΈ ΡΡ‚Π°Ρ€Π°Ρ‚ΡŒΡΡ ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… классах, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ Π½Π°ΠΏΡ€ΡΠ³Π°Ρ‚ΡŒ Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ ΠΌΠΎΠ·Π³ Π½ΠΈ Ρ€Π°Π·Π±ΠΎΡ€ΠΎΠΌ ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹Ρ… «портянок» ΠΊΠΎΠ΄Π° Π½Π° дСсятки экранов, Π½ΠΈ Π·Π°ΠΏΡƒΡ‚Π°Π½Π½Ρ‹ΠΌΠΈ связями ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ (omg) ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ ΠΊΡƒΡ‡Π΅ΠΉ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ….

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

Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΡƒΡΡΡŒ этими ΠΏΡƒΠ½ΠΊΡ‚Π°ΠΌΠΈ (усиливая ΠΈΠ»ΠΈ ослабляя ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… Π² зависимости ΠΎΡ‚ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡), ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ грязный ΠΊΠΎΠ΄ ΠΎΡ‚ чистого.

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

Чистый

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ всё-Ρ‚Π°ΠΊΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ – Π·Π°Ρ‡Π΅ΠΌ ΠΆΠ΅ ΠΎΠ½ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΡƒΠΆΠ΅Π½, этот чистый ΠΊΠΎΠ΄? И Ρ‚Π°ΠΊ Π»ΠΈ ΡƒΠΆ ΠΏΠ»ΠΎΡ… ΠΊΠΎΠ΄ грязный ΠΈ волосатый?

Ну, для Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ: it depends.
Π‘Ρ‹Π²Π°ΡŽΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ «быстро ΠΈ грязно» ΠΊΡƒΠ΄Π° Π²Π°ΠΆΠ½Π΅Π΅, Ρ‡Π΅ΠΌ Β«Π΄ΠΎΠ»Π³ΠΎ ΠΈ чисто». Π₯отя Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ «грязно» Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ всСгда ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ «быстро». Π‘Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ€ΠΎΠ²Π½ΠΎ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚.
Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. 6b6552ecec8b6e37bce347e14521ca2a. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-6b6552ecec8b6e37bce347e14521ca2a. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 6b6552ecec8b6e37bce347e14521ca2a. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArt

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ ΠΏΠΎΡΡ‚Π°Ρ€Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ случаС – ΠΊΠΎΠ³Π΄Π° грязноС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠΏΡ€Π°Π²Π΄Π°Π½ΠΎ, Π° ΠΊΠΎΠ³Π΄Π° Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ нСдопустимо.

НапримСр

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

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

Π’ΠΎ Π΅ΡΡ‚ΡŒ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ эту Π² ΠΈΠ΄Π΅Π°Π»Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ΄ΠΈΠ½-Π΄Π²Π° Ρ€Π°Π·Π°, послС Ρ‡Π΅Π³ΠΎ Π²Ρ‹ΠΊΠΈΠ½ΡƒΡ‚. Чистота ΠΊΠΎΠ΄Π° здСсь ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ Π²Π°ΠΆΠ½Π°.

Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€

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

Казалось Π±Ρ‹ – всё ΠΎΠ΄ΠΈΠ½ Π² ΠΎΠ΄ΠΈΠ½ повторяСт ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Однако здСсь Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ вопрос: Ρ€Π°Π· процСсс тСстирования Π½Π΅ прСдусматриваСт воспроизвСдСниС ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ситуаций, Ρ‚ΠΎ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ дальнСйшСго развития этой ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Π² качСствС инструмСнта тСстирования? НС станСт Π»ΠΈ ΠΎΠ½Π° ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ рСгулярно?

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

Π­Ρ‚ΠΎ Π½Π΅Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ «здСсь ΠΈ сСйчас» β€” Π·Π°Ρ‚ΠΎ, ΠΊΠΎΠ³Π΄Π° вновь встанСт вопрос ΠΎ воспроизвСдСнии ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ запросов Π½Π° сСрвСр – ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΡƒΡ‚ ΠΊΠ°ΠΊ Ρ‚ΡƒΡ‚ ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ минимального допиливания; Π° Π³Π»Π°Π²Π½ΠΎΠ΅ – минимального Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° вспоминаниС, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ ΠΊ Ρ‡Π΅ΠΌΡƒ.

Π’Ρ€Π΅Ρ‚ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ модуля для основного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΡƒΠΆΠ΅ нСсколько Π»Π΅Ρ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅.

Казалось Π±Ρ‹ – ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½, интСрфСйсы взаимодСйствия с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ модулями ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹. Β«ΠšΡ€ΡƒΡ‡Ρƒ-Π²Π΅Ρ€Ρ‡Ρƒ, Π³ΠΎΠ²Π½ΠΎΠΊΠΎΠ΄ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ…ΠΎΡ‡ΡƒΒ». Но Ρ‚ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½ΠΎΠ΅ «НО».

Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ с этим ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ»Π³ΠΎΠ΄Π°? Π“ΠΎΠ΄? ΠŸΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π»ΠΈ ΠΎΠ½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ? ИзмСнСния? Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°? Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π² ΠΈΡ‚ΠΎΠ³Π΅ Ρ€Π°Π·ΠΎΠ²ΡŒΡ‘Ρ‚ΡΡ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚?
Если хотя Π±Ρ‹ Π½Π° ΠΎΠ΄ΠΈΠ½ вопрос ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°Ρ‚ΡŒ хотя Π±Ρ‹ ΠΎΡ‚Π²Π΅Ρ‚ «вСроятно» β€” Ρ‚ΠΎ Π³ΠΎΠ²Π½ΠΎΠΊΠΎΠ΄ΠΈΡ‚ΡŒ, ΡƒΠ²Ρ‹ ΠΈ Π°Ρ…, строго Π½Π΅ рСкомСндуСтся.

Но это Π½Π΅ вСсь список вопросов. А ΠΊΡ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с этим ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· Π΄Π²Π°-Ρ‚Ρ€ΠΈ Π³ΠΎΠ΄Π°? Π’ΠΎΡ‚, ΠΊΡ‚ΠΎ Π΅Π³ΠΎ писал, ΠΈΠ»ΠΈ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ?

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

Если ΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с этим ΠΊΠΎΠ΄ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ сам Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ – Ρ‚ΠΎ Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅. Π”Π° ΠΎΠ½ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ»Π³ΠΎΠ΄Π° ΡƒΠΆΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ: Ρ‡Ρ‚ΠΎ, Π³Π΄Π΅ ΠΈ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚! Π•ΠΌΡƒ придётся Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ Π² этом ΠΊΠΎΠ΄Π΅ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ ΠΊΠΎΠ΄ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Ρ‡ΡƒΠΆΠΎΠΉ. НС Π²Ρ€Π°Π³ ΠΆΠ΅ ΠΎΠ½ самому сСбС?

Π§Π΅Ρ‚Π²Ρ‘Ρ€Ρ‚Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° прилоТСния (сайта, Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΌ интСрфСйсом – Ρ‡Π΅Π³ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ) ΠΏΠΎΠ΄ Π·Π°ΠΊΠ°Π· Π² сТатыС сроки Π·Π° нСбольшиС дСньги.

Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны – code and forget, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ ΠΈ ΠΊΠ°ΠΊ ΡƒΠ³ΠΎΠ΄Π½ΠΎ, лишь Π±Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ.

Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны – Π° Ρ‡Ρ‚ΠΎ, Ссли этот Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ Ρ‡Π΅Ρ€Π΅Π· мСсяц вСрнётся ΠΈ попросит Π·Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ дСньги Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»Π°Ρ‚ΡŒ? Π‘ΡƒΠ΄Π΅ΠΌ ΠΏΠ»Π°ΠΊΠ°Ρ‚ΡŒ, ΠΊΠΎΠ»ΠΎΡ‚ΡŒΡΡ, Π½ΠΎ ΠΆΠ΅Π²Π°Ρ‚ΡŒ кактус? ΠžΡ‚ΠΊΠ°ΠΆΠ΅ΠΌΡΡ ΠΎΡ‚ Π·Π°ΠΊΠ°Π·Π°?

А Ρ‡Ρ‚ΠΎ, Ссли ΠΎΠ½ обратится ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ (ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ), ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ feedback ΠΎ качСствС исполнСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΈ большС Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ вСрнётся ΠΊ Β«Π·Π»Ρ‹ΠΌ Π³ΠΎΠ²Π½ΠΎΠΊΠΎΠ΄Π΅Ρ€Π°ΠΌΒ», Π΄Π° Π΅Ρ‰Ρ‘ своим Π΄Ρ€ΡƒΠ·ΡŒΡΠΌ отсовСтуСт?

Π― ΡƒΠΆΠ΅ Π½Π΅ Π³ΠΎΠ²ΠΎΡ€ΡŽ ΠΎ Ρ‚Π°ΠΊΠΈΡ… Π²Π΅Ρ‰Π°Ρ…, ΠΊΠ°ΠΊ качСство ΠΊΠ°Ρ€ΠΌΡ‹ ΠΈ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠ².

ΠŸΡΡ‚Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€

Π‘Π°ΠΌΡ‹ΠΉ Тёсткий случай Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ³ΠΎ нСдопущСния говнокодирования.
МнС слоТно Π΄Π°ΠΆΠ΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСбС ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ осознанного Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² случаС ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π”Π° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ – ΠΎΠ΄ΠΈΠ½ Π³ΠΎΠ²Π½ΠΎΠΊΠΎΠ΄Π΅Ρ€ способСн принСсти Π²Ρ€Π΅Π΄Π° большС, Ρ‡Π΅ΠΌ враТСский Π°Π³Π΅Π½Ρ‚ Π² Ρ‚Ρ‹Π»Ρƒ Π²Ρ€Π°Π³Π°!
Если ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π΅ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ, бросив Π½Π° написаниС Π½ΠΈΠΊΠΎΠΌΡƒ Π½Π΅ врСдящих, Π½ΠΈ с Ρ‡Π΅ΠΌ Π½Π΅ связанных, Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Π»Π΅Π²Ρ‹Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ ΠΈ ΠΌΠΈΠ½ΠΈ-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ – Ρ‚ΠΎ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠ»Π΅Π²ΠΎΠΉ – ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ!

ΠΠ΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Π²Π½ΠΈΠΊΠ°Ρ‚ΡŒ, ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ, ΠΌΠ°Ρ‚Π΅Ρ€ΡΡΡŒ – Π° Π² ΠΈΡ‚ΠΎΠ³Π΅ Π²Ρ‹ΠΊΠΈΠ΄Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π·Π°Π½ΠΎΠ²ΠΎ – ΠΌΠ°Π»ΠΎ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‡Π΅ΠΌ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊ Π΅Ρ‰Ρ‘ ΠΈ ΠΏΠΎΡ€Ρ‚ΠΈΡ‚ ΠΎΠ±Ρ‰ΡƒΡŽ атмосфСру Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΈ минусуСт ΠΌΠΎΡ€Π°Π»ΡŒ всСх Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Π½Ρ‹Ρ… ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Ρ‚ΡŒΡΡ с Π³ΠΎΠ²Π½ΠΎΠΊΠΎΠ΄ΠΎΠΌ Π½Π΅ ΠΏΠΎ своСй Π²ΠΈΠ½Π΅.

А тСстированиС? Π‘ΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅? Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°??

Π― ΠΌΠΎΠ³ Π±Ρ‹ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ ΠΏΠ°Ρ€Ρƒ Ρ…ΡƒΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Π±Π·Π°Ρ†Π΅Π² – Π½ΠΎ Π½Π΅Ρ‚. НС ΠΌΠΎΠ³Ρƒ.
ΠšΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° Π²Ρ‹ΠΏΠ°Π΄Π°Π΅Ρ‚ ΠΈΠ· ΠΎΡΠ»Π°Π±Π΅Π²ΡˆΠΈΡ… ΠΏΠ°Π»ΡŒΡ†Π΅Π² ΠΏΡ€ΠΈ мысли ΠΎ Ρ‚ΠΎΠΌ, сколько Π²Ρ€Π΅Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ принСсти Π³ΠΎΠ²Π½ΠΎΠΊΠΎΠ΄ Π² командС…
Π­Ρ‚ΠΎ уТасно… уТасно…

УстрСмлённый

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ грязный ΠΊΠΎΠ΄ ΠΈ Ρ‡Π΅ΠΌ ΠΎΠ½ ΠΏΠ»ΠΎΡ…. ΠœΡ‹ всё Π΅Ρ‰Ρ‘ Π½Π΅ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄, Π½ΠΎ ΠΎΡ‰ΡƒΡ‰Π°Π΅ΠΌ Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ.
ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΆΠ΅ ΠΎΠ½ всСгда Π΅ΡΡ‚ΡŒ, этот грязный ΠΊΠΎΠ΄, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ всСгда присутствуСт ΠΈ ΠΏΠΎΡ€Ρ‚ΠΈΡ‚ Тизнь всСм – Π² Ρ‚ΠΎΠΌ числС ΠΈ своим Π°Π²Ρ‚ΠΎΡ€Π°ΠΌ?

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

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

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ссли Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Ρ€Π°Π·Π²ΠΈΡ‚ Β«Π½ΡŽΡ… Π½Π° грязый ΠΊΠΎΠ΄Β», ΠΎΠ½ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ всё Ρ‡ΠΈΡ‰Π΅ ΠΈ Π»ΡƒΡ‡ΡˆΠ΅.
Он Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ Π½Π° досугС интСрСсныС ΡΡ‚Π°Ρ‚ΡŒΠΈ, ΠΎΠ½ ΠΈΠ·ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹ проСктирования. Но Π±Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚ это ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π΅ΠΌΡƒ интСрСсно – Π° Π½Π΅ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ осознаёт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ развития своих Π½Π°Π²Ρ‹ΠΊΠΎΠ² написания чистого ΠΊΠΎΠ΄Π°.

И ΠΏΡ€ΠΈ этом, Π² ΠΈΠ΄Π΅Π°Π»Π΅, ΠΎΠ½ всСгда ΠΎΡ‰ΡƒΡ‰Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ ΠΊΠΎΠ΄ всё Π΅Ρ‰Ρ‘ нСдостаточно Ρ…ΠΎΡ€ΠΎΡˆ, Ρ‡Ρ‚ΠΎ Π΅ΠΌΡƒ Π΅Ρ‰Ρ‘ Π΄Π°Π»Π΅ΠΊΠΎ Π΄ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²Π°. И ΠΏΡƒΡΡ‚ΡŒ Π΅Π³ΠΎ сСгодняшний Β«Π³ΠΎΠ²Π½ΠΎΠΊΠΎΠ΄Β» Π½Π° Π³ΠΎΠ»ΠΎΠ²Ρƒ Π²Ρ‹ΡˆΠ΅ самого Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ писал Π΄Π²Π°-Ρ‚Ρ€ΠΈ Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ – всё Ρ€Π°Π²Π½ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΡƒΠ΄Π° расти.

Π’ связи с этим ΠΌΠ½Π΅ вспоминаСтся ΠΎΠ΄ΠΈΠ½ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠ½Π΅ΠΉΡˆΠΈΠΉ Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€ с ΠΌΠΎΠΈΠΌ ΠΊΠΎΠ»Π»Π΅Π³ΠΎΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ ΠΈ ΠΌΠ½Π΅, довСлось провСсти Π½Π΅ ΠΎΠ΄Π½ΠΎ собСсСдованиС с ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π°ΠΌΠΈ Π½Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° – Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄Π°ΠΆΠ΅ большС, Ρ‡Π΅ΠΌ собСсСдований Π² качСствС Ρ‚Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π°.

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

1) Π₯ΠΎΡ€ΠΎΡˆΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π°Ρ Π³ΠΎΠ»ΠΎΠ²Π° (поэтому Ρƒ нас всСгда Π΅ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΊΠΈ Π½Π° Π»ΠΎΠ³ΠΈΠΊΡƒ)
2) Высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ самокритичности (поэтому всСгда Π΅ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΊΠΈ Π½Π° написаниС ΠΊΠΎΠ΄Π° ΠΈ поиск ошибок Π² Π½Ρ‘ΠΌ)
3) Π˜Π½Ρ‚Π΅Ρ€Π΅Ρ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ (Π²Π°ΠΆΠ΅Π½ Π² мСньшСй стСпСни, Π·Π°Π΄Π°Ρ‡ΠΊΠ°ΠΌΠΈ Π½Π΅ опрСдСляСтся Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅)

Π’ΠΎ Π΅ΡΡ‚ΡŒ понятно, Ρ‡Ρ‚ΠΎ Ссли Π³ΠΎΠ»ΠΎΠ²Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠ»ΠΎΡ…ΠΎ – Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ Π½Π΅ ΡΡ‚Π°Π½Π΅ΡˆΡŒ ΠΏΡ€ΠΈ всём ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΈ старании. Однако, Ссли ΠΎΠ½Π° Π΄Π°ΠΆΠ΅ золотая ΠΈ свСтится ΠΎΡ‚ разумности – это Π΅Ρ‰Ρ‘ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ гарантия.

Π§Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ Π±Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ»ΠΎΠ΄ΠΎΠΉ спСциалист, видя, ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ Π΅ΠΌΡƒ всё даётся (особСнно – Π² сравнСнии с Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ своих ΠΎΠ΄Π½ΠΎΠ³Ρ€ΡƒΠΏΠΏΠ½ΠΈΠΊΠΎΠ², сокурсников, просто ровСсников) Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ искрСннС ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΡ€ΡƒΡ‡Π΅ Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ яйца.
И, хотя навСрняка ΠΊ этому Π΅ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ основания, Π½ΠΎ Π§Π‘Π’ Π·Π°ΡˆΠΊΠ°Π»ΠΈΠ²Π°Π΅Ρ‚ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ, Ρ‡Ρ‚ΠΎ Π² ΠΈΡ‚ΠΎΠ³Π΅ Π² ΠΎΠ΄ΠΈΠ½ прСкрасный ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΠ½ просто пСрСстаёт Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒΡΡ, считая, Ρ‡Ρ‚ΠΎ «я ΠΈ Ρ‚Π°ΠΊ ΡƒΠΌΠ½Ρ‹ΠΉ, Π° ΠΊΡ‚ΠΎ пытаСтся это ΠΎΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ – Ρ‚ΠΎΡ‚ Π΄ΡƒΠ½Π΄ΡƒΠΊΒ».

И Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Ссли ΠΏΡ€ΠΈ этом Ρƒ Π½Π΅Π³ΠΎ остаётся ΠΆΠΈΠ²ΠΎΠΉ, острый интСрСс ΠΊ своСй Ρ€Π°Π±ΠΎΡ‚Π΅. Если ΠΎΠ½ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ Β«ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ интСрСсно». Π’ΠΎΠ³Π΄Π° Ρƒ Π½Π΅Π³ΠΎ остаётся нСбольшой шанс Π½Π΅ Π·Π°ΡΡ‚Ρ‹Ρ‚ΡŒ, Π° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒΡΡ.

И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Π±Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΠ°Ρ€Π΅Π½ΡŒ (ΠΈΠ»ΠΈ Π΄Π΅Π²ΡƒΡˆΠΊΠ° – Ρ‡Ρ‚ΠΎ встрСчаСтся Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ€Π΅ΠΆΠ΅, ΡƒΠΆ ΠΈΠ·Π²ΠΈΠ½ΠΈΡ‚Π΅ мСня Π·Π° эту Π½Π΅ΠΏΠΎΠ»ΠΈΡ‚ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΡƒΡŽ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ) ΠΈ ΡƒΠΌΠ½Ρ‹ΠΉ, ΠΈ самокритичный – Ρ€Π΅Π΄ΠΊΠΎ остаётся Π΄ΠΎΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ своим ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ считаСт, Ρ‡Ρ‚ΠΎ Π΅ΠΌΡƒ Π΅Ρ‰Ρ‘ расти ΠΈ расти – Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ тСряСт (Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Ссли Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ) интСрСс ΠΊ профСссии, Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ мСньшС Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ, мСньшС ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

НачинаСт Ρ‡Π°Ρ‰Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ «строго ΠΏΠΎ спСцификации», ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ – ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΈΠ· Π·Π½Π°ΠΊΠΎΠΌΡ‹Ρ… сфСр. МСньшС ΡƒΠ΄Π΅Π»ΡΡ‚ΡŒ внимания Π½ΠΎΠ²Ρ‹ΠΌ языкам, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌ, концСпциям.

И становится Π²ΠΏΠΎΠ»Π½Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ, Π³ΠΎΠ΄Π½Ρ‹ΠΌ спСциалистом. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ·ΠΊΠΈΠΌ, Π° ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ. Π’ΠΏΠΎΠ»Π½Π΅ сСбС ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΌ.

Но Ρ‚Π°ΠΊ ΠΈ Π½Π΅ достигаСт Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ своСго ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π°.

И лишь Π² ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅Π΄ΠΊΠΈΡ… случаях ΡƒΠΌΠ½Ρ‹ΠΉ, способный, Π² Π²Ρ‹ΡΡˆΠ΅ΠΉ стСпСни самокритичный ΠΌΠΎΠ»ΠΎΠ΄ΠΎΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ с горящими Π³Π»Π°Π·Π°ΠΌΠΈ растёт Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½ΠΎ, СТСчасно – ΠΈ Π² ΠΈΡ‚ΠΎΠ³Π΅ становится Π·Π²Π΅Π·Π΄ΠΎΠΉ. Π‘Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ быстро становится Β«Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ свСтилом» – Π½ΠΎ Π½Π΅ застываСт, Π½Π΅ ограничиваСтся этим, Π° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ расти, Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒΡΡ, ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒΡΡ.

Ах, ΠΊΠ°ΠΊ прСкрасна эта ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Π° – Ρ‚Π°ΠΊ ΠΈ хочСтся ΡΠΌΠ°Ρ…Π½ΡƒΡ‚ΡŒ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ слСзу! Как прСкрасСн ΠΎΠ½, этот устрСмлённый Π² Π±Π΅ΡΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ»ΠΎΠ΄ΠΎΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, своим Π΄ΡƒΡ…ΠΎΠ²Π½Ρ‹ΠΌ ΠΏΠΎΡ€Ρ‹Π²ΠΎΠΌ ΠΏΡ€ΠΈΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΉ самыС нСбСса, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Ρ†Π΅Π»Π΅Π½ Π΅Π³ΠΎ Π²ΡΠ΅ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠΉ взгляд!

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

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

И ΠΎΡΡ‚Π°Ρ‚ΡŒΡΡ Π²Π½ΠΈΠ·Ρƒ, с щСмящСй Ρ€Π°Π΄ΠΎΡΡ‚ΡŒΡŽ наблюдая, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ½ΠΈΠ·Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ½ΠΈ пространство ΠΈ врСмя Π² своём стрСмлСнии.

И Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ хотя Π±Ρ‹ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ, хотя Π±Ρ‹ Ρ‡ΡƒΡ‚ΡŒ-Ρ‡ΡƒΡ‚ΡŒ – ΠΏΠΎΠΌΠΎΠ³, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π», Π° Π½Π΅ стоял Π² сторонС, Π·Π°ΡΡ‚Ρ‹Π²ΡˆΠΈΠΉ Π² своём ΡƒΠΏΠΎΠ΅Π½ΠΈΠΈ собствСнной Π²Π°ΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ, Π½Π΅ бросал ΠΏΡ€Π΅Π·Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… взглядов – «пхС… ΠΌΠΎΠ»ΠΎΠ΄Ρ‘ΠΆΡŒ..Β»

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ «чистый ΠΊΠΎΠ΄Β» Π² 2020-ΠΌ?

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. 4tn5u3x7v9g3r8rjkidpy77 nw. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-4tn5u3x7v9g3r8rjkidpy77 nw. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 4tn5u3x7v9g3r8rjkidpy77 nw. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArt
«Чистый ΠΊΠΎΠ΄Β» ΠΈ чистый ΠΊΠΎΡ‚

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Ρ…Π»Π΅Π±ΠΎΠΌ Π½Π΅ ΠΊΠΎΡ€ΠΌΠΈ, Π΄Π°ΠΉ ΠΏΠΎΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ чистотС ΠΊΠΎΠ΄Π°: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π΅Π΄Π°Π²Π½ΠΎ ΡˆΡƒΠΌΠΈΡ…Ρƒ Π½Π°Π²Ρ‘Π» пост Дэна Абрамова Β«Goodbye, Clean CodeΒ».

Но ΠΏΡ€ΠΈ этом Ρƒ самого понятия «чистый ΠΊΠΎΠ΄Β» Π½Π΅Ρ‚ Ρ‡Ρ‘Ρ‚ΠΊΠΎΠ³ΠΎ опрСдСлСния. Главная ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ этому вопросу β€” Β«Clean CodeΒ», Π³Π΄Π΅ Π ΠΎΠ±Π΅Ρ€Ρ‚ Β«Π”ΡΠ΄ΡŽΡˆΠΊΠ° Π‘ΠΎΠ±Β» ΠœΠ°Ρ€Ρ‚ΠΈΠ½ сразу заявляСт: «сколько программистов, ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉΒ». Π’ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, ΠΈΠ· этого ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚ Π½Π΅ Π²Ρ‹Π²ΠΎΠ΄ Β«Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎΠ± этом бСсполСзно», Π° Π²Ρ‹Π²ΠΎΠ΄ «стоит ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ опрСдСлСния». ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² ΠΊΠ½ΠΈΠ³Π΅ ΠΎΠ½ ΠΏΡ€ΠΈΠ²Ρ‘Π» мнСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²Ρ‹Π΄Π°ΡŽΡ‰ΠΈΡ…ΡΡ программистов ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄.

Нам стало интСрСсно: Π² 2020-ΠΌ прСдставлСния чСловСчСства ΠΎ чистом ΠΊΠΎΠ΄Π΅ ΠΎΡΡ‚Π°Π»ΠΈΡΡŒ Ρ‚Π΅ΠΌΠΈ ΠΆΠ΅, ΠΈΠ»ΠΈ с Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΊΠ½ΠΈΠ³ΠΈ ΠΊΠ°ΠΊ-Ρ‚ΠΎ измСнились? Π Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π»ΠΈ мнСния Ρƒ Ρ€Π°Π·Π½Ρ‹Ρ… Π°ΠΉΡ‚ΠΈΡˆΠ½ΠΈΠΊΠΎΠ²: ΠΌΠΎΠΆΠ΅Ρ‚, бэкСндСры видят всё с ΠΎΠ΄Π½ΠΎΠ³ΠΎ ракурса, Π° тСстировщики с Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ?

А ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π΅ΠΌΠ° холиварная, навСрняка ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΈΠ· вас окаТСтся Π½Π΅ согласСн с ΠΊΠ°ΠΊΠΈΠΌΠΈ-Ρ‚ΠΎ ΠΈΠ· ΠΌΠ½Π΅Π½ΠΈΠΉ. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Π°ΠΉΠ΄Π° ΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ Π² коммСнтариях, это Ρ‚ΠΎΠΆΠ΅ вСсСло!

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

DotNext

Π”ΠΆΠΎΠ½ Π‘ΠΊΠΈΡ‚

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtΠ”ΠΆΠΎΠ½ β€” Π»Π΅Π³Π΅Π½Π΄Π° Stack Overflow, Π°Π²Ρ‚ΠΎΡ€ ΠΊΠ½ΠΈΠ³ΠΈ Β«C# in DepthΒ» ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых извСстных Π΄ΠΎΡ‚Π½Π΅Ρ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΠ»Π°Π½Π΅Ρ‚Ρ‹. Он Π΄Π°Π» Π½Π°ΠΌ Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅:

«Для мСня чистый ΠΊΠΎΠ΄ β€” это скучный ΠΊΠΎΠ΄, с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. ЕдинствСнный ΡΡŽΡ€ΠΏΡ€ΠΈΠ· Π² Π½Ρ‘ΠΌ β€” это Ρ‚ΠΎ, насколько ΠΎΠ½ Π»ΠΈΡˆΡ‘Π½ ΡΡŽΡ€ΠΏΡ€ΠΈΠ·ΠΎΠ². Π― Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ β€žΠ”Π°, я Π±Ρ‹ ΠΌΠΎΠ³ Ρ‚Π°ΠΊΠΎΠ΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒβ€, Π΄Π°ΠΆΠ΅ Ссли Π±Ρ‹ Π½Π° самом Π΄Π΅Π»Π΅ я ΠΈ Π½Π΅ ΠΌΠΎΠ³ β€” ΠΏΠΎ Ρ‚ΠΎΠΌΡƒ, насколько Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠ½ спроСктирован.

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

УпомянутоС отсутствиС ΡΡŽΡ€ΠΏΡ€ΠΈΠ·ΠΎΠ² ΠΏΠΎΠ·ΠΆΠ΅ пСрСносится ΠΈ Π½Π° использованиС: ΠΊΠΎΠ³Π΄Π° я ΠΏΠΈΡˆΡƒ ΠΊΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ…ΠΎΡ€ΠΎΡˆΠΎ спроСктированный API, ΠΌΠΎΠΉ ΠΊΠΎΠ΄ Ρ‚ΠΎΠΆΠ΅ становится ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ ΠΈ скучным».

АндрСй Акиньшин

Когда ΠΌΡ‹ спросили, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π΄ΡƒΠΌΠ°Π΅Ρ‚ ΠΏΡ€ΠΎ чистый ΠΊΠΎΠ΄, АндрСй сослался Π½Π° Π΄Π²Π° своих старых хабрапоста: Β«Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹Β» ΠΈ Β«ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π½Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΒ». И ΠΌΡ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ для вас ΠΏΠ°Ρ€Ρƒ Π°Π±Π·Π°Ρ†Π΅Π² ΠΎΡ‚Ρ‚ΡƒΠ΄Π°, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ навСрняка Π·Π°Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΏΠΎΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ:

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

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

Π”ΠΈΠ»Π°Π½ Π‘ΠΈΡ‚Ρ‚ΠΈ

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtΠ₯Π°Π±Ρ€Π°Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Π”ΠΈΠ»Π°Π½Π° ΠΏΠΎ Π΅Π³ΠΎ Π²Π΄ΡƒΠΌΡ‡ΠΈΠ²ΠΎΠΌΡƒ ΠΈ яркому Π΄ΠΎΠΊΠ»Π°Π΄Ρƒ ΠΏΡ€ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρƒ с лСгаси-ΠΊΠΎΠ΄ΠΎΠΌ: для Π₯Π°Π±Ρ€Π° ΠΌΡ‹ Π΄Π΅Π»Π°Π»ΠΈ Π΅Π³ΠΎ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΡƒ. И ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ»ΠΈΡΡŒ ΠΊ Π”ΠΈΠ»Π°Π½Ρƒ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ чистого ΠΊΠΎΠ΄Π°, ΠΎΠ½ написал Ρ‚Π°ΠΊΠΎΠΉ Ρ€Π°Π·Π²Ρ‘Ρ€Π½ΡƒΡ‚Ρ‹ΠΉ ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½Π½Ρ‹ΠΉ тСкст, Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ Ρ…ΠΎΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ постом ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠΉ:

«Для мСня интСрСсно, Ρ‡Ρ‚ΠΎ понятиС «чистый ΠΊΠΎΠ΄Β» Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΠΈΠ»ΠΎΡΡŒ Π΄Π°Π»Π΅ΠΊΠΎ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ ΠΊΡ€ΡƒΠ³Π° людСй, Ρ‡ΠΈΡ‚Π°Π²ΡˆΠΈΡ… ΠΊΠ½ΠΈΠ³Ρƒ Π ΠΎΠ±Π΅Ρ€Ρ‚Π° ΠœΠ°Ρ€Ρ‚ΠΈΠ½Π°. Π― общался с ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ, ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ слова Β«clean codeΒ», Π½ΠΎ Π½Π΅ Ρ‡ΠΈΡ‚Π°Π»ΠΈ ΠΊΠ½ΠΈΠ³Ρƒ. Π― Π΄Π°ΠΆΠ΅ встрСчал ΠΈΡ… Π² ΠΊΠΎΠ΄Ρ€Π΅Π²ΡŒΡŽ: Β«Π’ΡƒΡ‚ всё довольно Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Π½ΠΎ моТСшь Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ?Β» β€” ΠΈ такая ΠΏΡ€ΠΎΡΡŒΠ±Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ°ΡŽΡ‰Π΅ Π½Π΅Ρ‚ΠΎΡ‡Π½ΠΎΠΉ, Ссли Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ «чистый» ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ контСкстС.

Π’ английском Π΅ΡΡ‚ΡŒ слова, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ вмСстС β€” Β«cleanΒ», Β«tidyΒ», Β«organisedΒ», Β«neatΒ» β€” ΠΈ для мСня ΠΊΠ°ΠΊ носитСля английского ΠΎΠ½ΠΈ всС ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ. Π― Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠ½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ этих слов ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ софта.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΡƒΡ…Π½ΡŽ рСсторана. Π£ слова Β«cleanΒ» Π² этом контСкстС Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ ΠΊΠΎΠ½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ. Всё Π²Ρ‹ΠΌΡ‹Ρ‚ΠΎ, стСрилизовано, Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΡƒΠ³Ρ€ΠΎΠ·Ρ‹ зараТСния ΠΈΠ·-Π·Π° сырых ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ², ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅.

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

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ прСдставим Π΄Π΅Ρ€Π΅Π²ΠΎΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Ρ†Π΅Ρ…. Π’ этом мСстС Π³Ρ€ΡΠ·ΡŒ Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Π½ΠΎ здСсь Ρƒ вас совсСм Π½Π΅ Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ «чистоты», ΠΊΠ°ΠΊ Π½Π° ΠΊΡƒΡ…Π½Π΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Ρ‡ΠΈΡ‰Π°Ρ‚ΡŒ Π·ΡƒΠ±ΠΈΠ»ΠΎ, ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΎ Π½Π΅ Π½Π°Ρ‡Π½Ρ‘Ρ‚ ΡΠ²Π΅Ρ€ΠΊΠ°Ρ‚ΡŒ, Π½ΠΎ Π²Ρ‹ всё Ρ€Π°Π²Π½ΠΎ вряд Π»ΠΈ стали Π±Ρ‹ Ρ€Π΅Π·Π°Ρ‚ΡŒ ΠΈΠΌ сосиски. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ слово Β«cleanΒ» ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ.

Но для мСня слова Π²Ρ€ΠΎΠ΄Π΅ Β«tidyΒ» ΠΈ Β«organisedΒ» Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈ Ρ‚Π°ΠΊΠΈΡ… контСкстах, Π³Π΄Π΅ Β«cleanΒ» Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚. Β«OrganisedΒ» ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΊΠ°ΠΊ слСдуСт ΠΏΠΎΠ΄ΡƒΠΌΠ°Π», ΠΊΠ°ΠΊ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ элСмСнты ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ мСста, Π° Β«tidyΒ» ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ эти элСмСнты Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ находятся Π½Π° ΠΎΡ‚Π²Π΅Π΄Ρ‘Π½Π½Ρ‹Ρ… ΠΈΠΌ мСстах. Как говорится Π² старой ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΊΠ΅, «всСму Π΅ΡΡ‚ΡŒ своё мСсто ΠΈ всё Π½Π° своём мСстС».

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π² случаС с ΠΊΠΎΠ΄ΠΎΠΌ Π½Π°ΠΌ стоит Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ словах Β«cleanΒ», Β«tidyΒ» ΠΈ Β«organisedΒ» ΠΊΠ°ΠΊ ΠΎ Ρ‚Ρ€Ρ‘Ρ… Ρ€Π°Π·Π½Ρ‹Ρ… понятиях. Β«CleanΒ» ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ смотритС Π½Π° составныС части ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ‹ β€” ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, интСрфСйсы β€” ΠΈ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ для бСспокойства. Π’ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠ½Π²Π΅Π½Ρ†ΠΈΠΉ; названия ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² написаны Π±Π΅Π· ошибок; Π² дСталях Π²Ρ€ΠΎΠ΄Π΅ отступов ΠΈ скобок ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ стиля; ΠΊΡƒΠ΄Π° Π½ΠΈ посмотри, видишь подтвСрТдСния Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π° Π±Π°Π·ΠΎΠ²ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ этим Π·Π°ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ люди, подходящиС ΠΊ Π΄Π΅Π»Ρƒ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½ΠΎ. Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ «грязного ΠΊΠΎΠ΄Π°Β» β€” Ρ‚Π°ΠΊΠΎΠ³ΠΎ, Π³Π΄Π΅ Π² названиях ΠΊΡƒΡ‡Π° ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ, Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки ΠΈ отступы Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‡Π½Ρ‹, Π½Π΅ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ названия Ρ„Π°ΠΉΠ»ΠΎΠ². Π­Ρ‚ΠΎ Ρ‚Π΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ магичСски ΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ исправлСны, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΡˆΡŒ инструмСнт Β«code cleanupΒ» Π² Ρ‡Ρ‘ΠΌ-Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅ ReSharper.

Β«OrganisedΒ» β€” это ΠΏΡ€ΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ. Π­Ρ‚ΠΎ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Ρ‹Ρ€Π½ΡƒΡ‚ΡŒ Π² Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡƒΡŽ ΠΊΠΎΠ΄ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ ΠΈ Π½Π°ΠΉΡ‚ΠΈ Π²Π΅Ρ‰ΠΈ Ρ‚Π°ΠΌ, Π³Π΄Π΅ оТидаСшь ΠΈΡ… ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΈ Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Π΅ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚, Π° Π½Π΅ ΠΌΠ΅ΡˆΠ°ΡŽΡ‚; ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π½Π°Π·Π²Π°Π½Ρ‹ Π½Π΅ просто ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Π½Π°Π·Π²Π°Π½Ρ‹ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния языка, Π½ΠΎ ΠΈ ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‚ Π΅Π΄ΠΈΠ½Ρ‹ΠΉ язык бизнСса, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΡˆΡŒ.

А Β«tidyΒ» β€” это ΠΏΡ€ΠΎ ΡƒΠ²Π°ΠΆΠ΅Π½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… конвСнций… кодовая Π±Π°Π·Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ моТСшь Π½Π°ΠΉΡ‚ΠΈ Π½ΡƒΠΆΠ½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΈΠΌ мСстах, Π΄Π°ΠΆΠ΅ Ссли конкрСтная организационная модСль Π²Π°ΠΌ Π² этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π΅ слишком понятна.

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

Heisenbug

Π­Ρ‚ΠΎ «конфСрСнция ΠΏΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для тСстировщиков»: ΠΎΠ½Π° Π½Π° стыкС тСстирования ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΅Ρ‘ спикСры ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ спСцифику ΠΎΠ±ΠΎΠΈΡ… этих ΠΌΠΈΡ€ΠΎΠ² сразу.

Иван ΠšΡ€ΡƒΡ‚ΠΎΠ² ΠΈ Анна Π§Π΅Ρ€Π½Ρ‹ΡˆΠ΅Π²Π°

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtИван ΠΈ Анна Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² Ρ€Π°Π·Π½Ρ‹Ρ… компаниях, Π½ΠΎ ΠΊΠΎΠ΅-Ρ‡Ρ‚ΠΎ ΠΈΡ… ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚: ΠΎΠ±Π° ΠΌΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡŽΡ‚ ΠΏΡ€ΠΎ Selenium. ΠœΡ‹ ΠΎΠ±Ρ‰Π°Π»ΠΈΡΡŒ с Π½ΠΈΠΌΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ совмСстноС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅:

Иван: «Для мСня самоС простоС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ чистого ΠΊΠΎΠ΄Π° β€” это ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ понятСн Π±Π΅Π· ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π², Β«ΡΠ°ΠΌΠΎΠ΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉΡΡΒ». Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π²Π°Π»Π΅Π½ коммСнтариями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚ β€” это Π½Π΅ чистый ΠΊΠΎΠ΄Β».

Анна: Β«Π£ мСня ΠΏΠΎΡ…ΠΎΠΆΠ΅: это ΠΊΠΎΠ΄, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ быстро Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π±Π°Π³, Π»Π΅Π³ΠΊΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΒ».

Иван: Β«Π•Ρ‰Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ это Β«ΠΊΠΎΠ΄, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ стыдно». Π’ΠΎΠΎΠ±Ρ‰Π΅ говорят, Ρ‡Ρ‚ΠΎ Ссли Ρ‚Ρ‹ ΡΠΌΠΎΡ‚Ρ€ΠΈΡˆΡŒ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ написал ΠΏΠΎΠ»Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄, ΠΈ Π½Π΅ ΡƒΠΆΠ°ΡΠ°Π΅ΡˆΡŒΡΡ, Ρ‚ΠΎ Ρ‚Ρ‹ Π½Π΅ Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΡˆΡŒΡΡ. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π³ΠΎΠ΄ΠΎΠΌ Ρ‚Π²ΠΎΠΉ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ всё Ρ‡ΠΈΡ‰Π΅Β».

БСбастиан Π”Π°ΡˆΠ½Π΅Ρ€

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtБСбастиан β€” Lead Java Developer Advocate Π² IBM, ΠΈ Π΅Π³ΠΎ часто ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° Java-конфСрСнциях. Но ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ сСйчас ΠΎΠ½ ΠΏΡ€ΠΈΠ»Π΅Ρ‚Π°Π΅Ρ‚ Π½Π° Heisenbug, ΠΌΡ‹ спросили Π΅Π³ΠΎ ΠΎ чистом ΠΊΠΎΠ΄Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² контСкстС тСстирования, ΠΈ ΠΎΠ½ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΠ»:

«По ΠΌΠΎΠ΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Ρƒ, качСство ΠΊΠΎΠ΄Π° Π²Π°ΠΆΠ½ΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² случаС ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ½-ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΈ для Π½Π°ΡˆΠΈΡ… тСстов. Π’ тСстах чистым ΠΊΠΎΠ΄ΠΎΠΌ, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ абстракциями ΠΈ Π΄Π΅Π»Π΅Π³Π°Ρ†ΠΈΠ΅ΠΉ часто ΠΏΡ€Π΅Π½Π΅Π±Ρ€Π΅Π³Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚Π°ΠΊΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ тСстов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΡˆΡŒ. Когда ΠΌΡ‹ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠΌ ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ½-ΠΊΠΎΠ΄ ΠΈ мСняСм Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, становится Π²ΠΈΠ΄Π½ΠΎ, Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π»ΠΈ ΠΌΡ‹ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π»ΠΈ Π½Π°Π΄ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ Π½Π°ΡˆΠΈΡ… тСстов».

АндрСй Π›ΡƒΡˆΠ½ΠΈΠΊΠΎΠ²

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtАндрСй Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ инструмСнтом для Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Playwright, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΡ‹ Π½Π΅Π΄Π°Π²Π½ΠΎ писали. Π•Π³ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ оказалось самым Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½Ρ‹ΠΌ:

«Чистый ΠΊΠΎΠ΄ β€” это Ρ‚ΡƒΠΏΠΎΠΉ, ΠΎΡ‡Π΅Π½ΡŒ понятный ΠΊΠΎΠ΄. И Ρ‡Π΅ΠΌ Ρ‚ΡƒΠΏΠ΅Π΅, Ρ‚Π΅ΠΌ Π»ΡƒΡ‡ΡˆΠ΅Β».

АлСксандра Π‘Π²Π°Ρ‚ΠΈΠΊΠΎΠ²Π°

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtАлСксандра β€” экспСрт ΠΏΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ бСзопасности Π² ΠžΠ΄Π½ΠΎΠΊΠ»Π°ΡΡΠ½ΠΈΠΊΠ°Ρ…, которая Β«Π½Π°Ρ‡ΠΈΠ½Π°Π»Π° Π² IT ΠΊΠ°ΠΊ Java-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, Π½ΠΎ свСрнула Π½Π΅ Ρ‚ΡƒΠ΄Π°Β». Π•Ρ‘ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ оказалось Ρ‚Π°ΠΊΠΈΠΌ:

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

На Π΄Π΅Π»Π΅ это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ структурирован, Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π΅Π½, слСдуСт общСпринятым ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°ΠΌ для Ρ‚ΠΎΠ³ΠΎ языка Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ написан, Π½Π΅ содСрТит нСявных зависимостСй ΠΈΠ»ΠΈ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Ρ… эффСктов ΠΈ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ тСстами».

HolyJS

АндрСй ΠœΠ΅Π»ΠΈΡ…ΠΎΠ²

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtАндрСй извСстСн ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΏΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ Β«Π”Π΅Π²ΡˆΠ°Ρ…Ρ‚Π°Β». ΠΠ΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, постоянно Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ свои мысли Π² Β«Π”Π΅Π²ΡˆΠ°Ρ…Ρ‚Π°-подкастС», ΠΈ свою ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ сформулировал Ρ‡Ρ‘Ρ‚ΠΊΠΎ:

Β«Π ΠΎΠ±Π΅Ρ€Ρ‚ «Дядя» ΠœΠ°Ρ€Ρ‚ΠΈΠ½ трСмя своими Π³Π»Π°Π²Π½Ρ‹ΠΌΠΈ ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ (Β«Clean CodeΒ», Β«The Clean CoderΒ» ΠΈ Β«Clean ArchitectureΒ»), ΠΊΠ°ΠΊ ΠΌΠ½Π΅ каТСтся, пытаСтся для сСбя ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° вопросы: ΠΊΡ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈ ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΈΡΠ°Ρ‚ΡŒ. МоТно ΠΏΠΎΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ коррСктности Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΅Π³ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ², Π½ΠΎ Π²ΠΎΡ‚ Ρ‡Ρ‚ΠΎ, нСоспоримо β€” эти ΠΊΠ½ΠΈΠ³ΠΈ построСны Π½Π° Π±ΠΎΠ³Π°Ρ‚ΠΎΠΌ Π»ΠΈΡ‡Π½ΠΎΠΌ ΠΎΠΏΡ‹Ρ‚Π΅ ΠΈ Π·Π΄Ρ€Π°Π²ΠΎΠΌ смыслС. И Π² Ρ€Π°ΠΌΠΊΠ°Ρ… этой ΠΈΠ΄Π΅ΠΈ я ΠΌΠΎΠ³Ρƒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ для мСня чистый ΠΊΠΎΠ΄ β€” это ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ написал Π±Ρ‹ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΡΠΏΠΎΡ‚ΠΊΠ½ΡƒΠ²ΡˆΠΈΠΉΡΡ ΠΎ Π½Π΅ΠΌΠ°Π»ΠΎΠ΅ количСство ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹Ρ… ΠΊΠ°ΠΌΠ½Π΅ΠΉ Π² своСй ΠΆΠΈΠ·Π½ΠΈ ΠΈ Π² этом Π±ΠΎΠ»Π΅Π·Π½Π΅Π½Π½ΠΎΠΌ процСссС Π½Π°ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉΡΡ ΠΈΠ΄Ρ‚ΠΈ остороТной ΠΏΠΎΡ…ΠΎΠ΄ΠΊΠΎΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ этих ΠΊΠ°ΠΌΠ½Π΅ΠΉ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ.

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

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

АлСксандра Калинина

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtАлСксандра состоит Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚Π΅ HolyJS, Ρƒ Π½Π΅Ρ‘ большой ΠΎΠΏΡ‹Ρ‚ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ β€” ΠΈ, хотя ΠΎΠ½Π° Π½Π΅ с Heisenbug, с тСстами ΠΎΠ½Π° Ρ‚ΠΎΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΠ° Π½Π΅ ΠΏΠΎΠ½Π°ΡΠ»Ρ‹ΡˆΠΊΠ΅ (unit, integration, E2E, B2B). Π’ΠΎΡ‚ Π΅Ρ‘ тСкст:

Β«Clean code β€” сСйчас это простоС понятиС, Π½ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π΅Π³ΠΎ довольно Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ. МнС каТСтся, Ρ‡Ρ‚ΠΎ чистый ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ соблюдСнии ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€Π°Π²ΠΈΠ»:

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

NicolΓ² Ribaudo

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtНиколо, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ Π΅Ρ‰Ρ‘ студСнтом, стал ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² компилятора Babel (ΠΎΠ± этом ΠΌΡ‹ Π΅Π³ΠΎ ΡƒΠΆΠ΅ Ρ€Π°ΡΡΠΏΡ€Π°ΡˆΠΈΠ²Π°Π»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ). Π•Π³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ оказался Ρ‚Π°ΠΊΠΈΠΌ:

«Чистый ΠΊΠΎΠ΄ β€” это ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° малСнькиС Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½Ρ‹Π΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅.

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

Код ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ чистым Π²Π½Π΅ зависимости ΠΎΡ‚ языка программирования ΠΈΠ»ΠΈ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΡ‹: Π°Ρ‚ΠΎΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ малСнькиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΊΠ°ΠΊ малСнькиС Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠ΄Π°, Π½Π΅ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ синтаксичСски».

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. image loader. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ‚ΠΎ. Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ чистый ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Бвирский, Senior Python Developer / Team Lead, DataArtНаконСц, ΠΊΠΎΠ³Π΄Π° мнСния Π±Ρ‹Π»ΠΈ собраны, ΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ ΠΈΡ… самому Π”ΡΠ΄ΡŽΡˆΠΊΠ΅ Π‘ΠΎΠ±Ρƒ ΠΈ спросили, хочСтся Π»ΠΈ Π΅ΠΌΡƒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ. ΠžΡ‚Π²Π΅Ρ‚ оказался Ρ‚Π°ΠΊΠΈΠΌ:

Β«Π― ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠ² Π²Ρ‹ΡˆΠ΅. Π― Π±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ Π²Π΅Ρ‰ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ сказал Майкл ЀСзСрс: β€œΠ§ΠΈΡΡ‚Ρ‹ΠΉ ΠΊΠΎΠ΄ всСгда выглядит Ρ‚Π°ΠΊ, Π±ΡƒΠ΄Ρ‚ΠΎ Π΅Π³ΠΎ писал Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½Π΅ всё равно”».

Π•Π³ΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π·Π²ΡƒΡ‡ΠΈΡ‚ ΠΎΡ‡Π΅Π½ΡŒ Π΄Ρ€ΡƒΠΆΠ΅Π»ΡŽΠ±Π½ΠΎ. Но чистый ΠΊΠΎΠ΄ β€” такая дискуссионная Ρ‚Π΅ΠΌΠ°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΊΠ° ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΈΠ· вас согласно ΠΊΠΈΠ²Π°Π΅Ρ‚, ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ навСрняка Π³ΠΎΡ€ΠΈΡ‚, ощущая Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅:

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

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

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