Tab’ы или пробелы? Фигурная скобка на той же строке или на новой? Ширина в 80 символов или 120?
Многие любят спорить о таких вещах. Даже выпущен популярный эпизод в шоу Силиконовая Долина о споре по поводу tab’ов и пробелов.
Наконец, в этой статье я дам вам ответ на этот вопрос.
В своей карьере я часто встречался с такими войнами. Мне приходилось читать статьи о том, какие конвенции правильнее, в то время, как остальные считались неправильными. Приходилось вскакивать на своего верного коня и декларировать всем, что они не правы, а я прав.
ПЕДА́НТ
Мужской род
- Тот, кто излишне строг в выполнении мелочных, формальных требований (в науке, в жизни и т. п.), буквоед.
Прошли годы пока я искал правильный ответ и, наконец, я нашел его…
Это не имеет значения.
Последовательность имеет значение. Читабельность имеет значение. Споры о том, что лучше, а что нет, ничего не значат.
Последние 20 с лишним лет я следовал всем возможным трендам. Следовал различным конвенциям разных языков. Ничего из перечисленного не повлияло на улучшение моего кода.
Не поймите неправильно, хорошо отформатированный, чистый код проще поддерживать и изменять в будущем.
Нет ничего плохого в улучшении своего кода. Но очень часто, это становится причиной оправдания возникающей прокрастинации.
Все это происходит потому, что в спешке многое может усложняться – особенно если мы новички на каком-то этапе. В итоге это приводит к боязни, что мы не сможем справиться с задачей.
Намного легче спорить о незначительных вещах, в которых не всплывет наша некомпетенция.
Этот феномен стал настолько популярен, что о нем создали теории.
Самая известная из них – Закон тривиальности Паркинсона, который указывает, что многие уделяют слишком много внимания незначительным вопросам.
Для описания этого закона, Паркинсон предоставил пример о работниках, чьей задачей было утвердить планы постройки атомной электростанции. Но они затратили слишком много времени споря о том, какой материал использовать для крыши велопарковки. В то же время они не обращали внимание на дизайн самой постройки, хотя вопрос был намного важнее.
Разработчик из Дании Поул-Хеннинг Камп позже придумал термин «эффект велопарковки», описывающий это состояние.
Если вы разработчик и вам приходится сотрудничать с другими программистами, то возможно, вам приходилось сталкиваться с этим эффектом практически каждодневно.
Если вы часто находите себя погруженным в одном из таких споров со своими коллегами, вам стоит запомнить закон Сэйри:
В любом споре накал чувств обратно пропорционален важности рассматриваемого вопроса
Как консультант, я общался со многими клиентами и у каждого есть свои собственные правила. Я решил, что единственный способ преуспеть для меня – оставить все лишнее и заняться серьезными вопросами. Когда дело касается стандарта программирования я не заморачиваюсь.
Если вы в раздумьях о том, какой стиль выбрать, я рекомендую задать себе следующие вопросы:
- Есть ли какой-либо инструмент, который автоматически применит правила стиля к моему коду с малейшим моим участием?
- Применяются ли эти инструменты и стили известными организациями?
Если ответ на оба вопроса «да», то смело приступайте к делу.
Приведу список инструментов для следующих популярных языков:
Javascript Standard Style(это не официальный стандарт JavaScript, а имя продукта)
Статью перевел timurziev. Оригинал на Medium.freecodecamp.com доступен по ссылке.