Слишком Чистый?

Привет, Хабр! Предлагаю вашему вниманию перевод статьи " Слишком чистый? » Роберта К.

Мартина (дядя Боб).



Слишком чистый?

Я только что посмотрел выступление Сара Мэй : Жизнеспособный код .

Это было очень хорошо.

Я полностью согласен с основными тезисами ее выступления.

С другой стороны, тема ее выступления была чем-то, что я раньше как следует не обдумывал.

Но прежде чем я перейду к этому, у меня есть придирка.

В какой-то момент своего выступления она раскритиковала движение мастеров за то, что оно слишком сосредоточено на индивидуальном, а не командном поведении.

К сожалению, это неправильная характеристика ремесленного движения, которое всегда было сосредоточено на создании профессиональных и этических команд. В этом случае идея о том, что программные системы должны быть «пригодными для жизни», является интересной.

По мнению Мэй, чтобы быть «пригодной для жизни», организация программной системы должна находиться где-то между ужасающе запутанным беспорядком хранения кода и антисептической чистотой, которую можно найти на страницах журналов по дизайну интерьера и брошюр по продаже жилья.

Это не то, что я рассматривал или высказывал раньше; хотя я всегда застенчиво практиковал это.

Может ли система быть слишком чистой? Можно ли настолько уделить внимание чистоте, чтобы в системе практически никто не мог работать? Вот фотография моего офиса, сделанная сегодня.

Что ты видишь?

Слишком чистый?

Здесь относительно чисто.

В этом есть очевидная организация.

Вы можете видеть мое рабочее место с ноутбуком и двумя экранами в центре.

Вы также можете увидеть мою станцию моделирования полета справа.

Есть корзины, ящики и вся обычная организационная атрибутика.

Но вокруг тоже царит некоторый беспорядок.

Рядом с принтером, в крайнем левом углу, находится ОШИБКА-СОЛЬ, готовая справиться с вторгшейся мухой.

Справа, над ТАРДИС, если смотреть через крайний правый экран, лежит рулон туалетной бумаги.

На случай, если я пролью кофе или захочу чихнуть.

Сможете ли вы найти спиннер? Видите кучу инструментов для рисования слева? А как насчет всех этих наклеек, фотографий и.

Что же находится внутри всех этих дыр в шкафу? Чистый и организованный офис делает его удобным для использования.

Я знаю, где все вещи.

И я знаю, как получить к ним доступ.

Несвязанные элементы не мешают друг другу.

Нет ненужных зависимостей.

Небольшой беспорядок в офисе — это хорошо.

Беспорядок существует из-за временных проблем.

Мухи, кофе, чихание, писанина, моменты безделья, смена рабочих приоритетов и просто общие места, куда можно положить вещи, с которыми я не знаю, что делать.

Без этого беспорядка мне было бы труднее пользоваться своим рабочим пространством.

И следующее использование офиса снова вызвало бы хаос! Поэтому, очевидно, я позволяю небольшому беспорядку проникнуть в мой офис.

Эта путаница позволяет решить временные проблемы.

Но также ясно, что я борюсь за то, чтобы держать этот бардак под контролем.

Борюсь за чистоту в офисе.

И это непросто! Применимо ли это правило к коду? Это абсолютно верно! Когда я пишу код, я изо всех сил стараюсь поддерживать его в чистоте.

Но есть и небольшие места, где я нарушаю правила именно потому, что эти нарушения дают возможность решить временные проблемы.

Например, я очень стараюсь отделить докладчиков от просмотров.

Код, который приводит данные в презентабельную форму, не должен располагаться рядом с кодом, отображающим эти данные на экране.

С другой стороны, когда вы пытаетесь заставить экран выглядеть и работать правильно, очень сложно переключаться между двумя разными файлами.

Иногда имеет смысл снова объединить код, заставить все работать так, как вам нравится, а затем повторно разделить код. Этот метод известен как «Лучше — хуже».

В любом случае, я думаю, есть смысл сделать код пригодным для использования.

Нам не должно быть стыдно, если наш код выглядит немного обжитым.

С другой стороны, мы должны хорошо заботиться о себе и не позволять беспорядку выйти из-под контроля.

Теги: #ИТ-стандарты #код #Идеальный код #перевод #чистота кода

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.