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

Что такое чистый код и зачем он нам нужен?

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

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

Целевой аудиторией программиста должен быть не компьютер, а другие программисты. Исследования показывают, что отношение времени, затрачиваемого программистом на чтение кода, к времени, затрачиваемому программистом на написание кода, обычно составляет 10 к 1.

Написание чистого кода облегчает его понимание и жизненно важно для создания успешного продукта.

Трудно ли писать чистый код?

Написание чистого кода — тяжелая работа. Это требует много практики и концентрации.

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

Именование переменных

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

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

Комментарии

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

Комментарии могут быстро показать, что делает сложная функция, или, может быть, даже объяснить, почему определенные вещи должны происходить в определенном порядке. Однако слишком много комментариев может иметь негативные последствия и привести к плохому коду.

Избегайте больших функций

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

Когда функция больше, хорошей практикой является ее разделение. Это сделает код чистым, легким для понимания, а также позволит повторно использовать его во всем коде.

Например, если нам нужно сложить и вычесть два числа, обычно мы можем сделать это с помощью одной функции. Однако хорошей практикой является разделение их на две функции. Тогда они будут повторно использоваться во всем приложении.

Меньше аргументов

У функций должно быть меньше аргументов, чем меньше, тем лучше. По возможности избегайте использования трех или более аргументов.

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

Избегайте дезинформации

Будьте осторожны со словами, которые означают что-то конкретное. Не ссылайтесь на группу книг как book_list. Даже если его тип — список, «книги» — гораздо более простое и лучшее название.

//bad practice
var book_list = [];
//good practice
var books = [];

Повторение кода

Это означает, что блок кода повторяется в вашем коде более одного раза. Следовательно, блок кода необходимо извлечь в функцию. Дублирующийся код означает, что вам нужно что-то изменить в нескольких местах, когда есть логическая ошибка.

Использовать постоянные значения

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

const DAYS_IN_A_YEAR = 365;

Закомментированный код

Другие, увидев закомментированный код, не удалят его, потому что не знают, есть ли у него причина. Этот код останется там надолго. Поэтому просто удалите его.

«Каждый может написать код, понятный компьютеру. Хорошие программисты пишут код, понятный людям». -Мартин Фаулер

Чистое кодирование — это не тот навык, который можно освоить мгновенно. Это должно стать привычкой, которую необходимо развивать, следуя этим принципам и применяя их всякий раз, когда вы пишете код.