Небольшие изменения, большие победы: как небольшие изменения делают ваш код более привлекательным для глаз

Когда мы думаем о чистом коде, наш мозг переключается на принципы SOLID, короткие занятия, отсутствие комментариев и хорошие шаблоны проектирования. Хотя все они применимы, они бесполезны без самой простой вещи: хорошего именования.

Я могу потратить 2 дня на написание сервиса, соблюдающего все принципы SOLID, поддающегося модульному тестированию, легко изменяемого, но никем не понятого мной. Хуже того, даже я не смог бы понять это за 6 месяцев.

Как это возможно?

Вот почему вы читаете эту статью: Плохое название.

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

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

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

1. Переменные: ясность важнее краткости

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

Плохо

int d = 10;
string n = "John";
double h = 180.5;
int nr = 100;

Хорошо

int days = 10;
string name = "John";
double height = 180.5;
int employeeCount = 100;

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

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