Извините, я не хотел быть таким грубым. Звучит довольно резко, не так ли? Но дело в том, что в этом есть доля правды. Вы, наверное, изучили некоторые коды и подумали, что они были полным беспорядком.

Ни один разработчик не идеален. Все они, независимо от того, насколько они хороши, на самом деле, делали ошибки, как маленькие, так и большие.

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

Либо вы сделали их сами, а кто-то указал на вас пальцем, либо вы имели честь посмотреть на pull request от другого разработчика.

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

Причина большинства кодов отстой

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

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

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

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

Еще одна хорошая практика, чтобы ваш код был читабельным, — это ограничение количества отступов. Код, как правило, становится труднее читать, когда слишком много отступов.

Вместо того, чтобы использовать все виды вложенных конструкций if else, вы можете перечень вопросов по guard-clause. Это поможет вам сохранить ограничение на количество необходимых отступов.

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

Имейте в виду, что код читается гораздо чаще, чем пишется. Роберт С. Мартин сказал о читабельности следующее:

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

Роберт С. Мартин

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

Дастин Босвелл и Тревор Фушер

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

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

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

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

Последняя причина, по которой большинство кода отстой, заключается в том, что он не тестируемый. Это довольно простое объяснение. Большинство программистов вообще не любят тестирование.

Добавьте тот факт, что слишком многим программистам не хватает навыков для написания правильных тестов. Или вообще умеете писать тесты. Сочетание этих двух вещей – очен плохо.

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

Заключение

Хорошо написанный код отвечает определенным критериям: он читаемый, понятный, поддерживаемый и тестируемый. Если код не соответствует этим критериям, есть вероятность, что он отстой.

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

Просто знайте, что каждый разработчик делает ошибки и что их никогда не поздно исправить!

About the Author

Ergashev Lazizbek

Добрый день, дорогие мои читатели, позвольте мне рассказать вам немного о себе. Я Лазизбек Эргашев, я веб-разработчик из Узбекистана. В основном я использую laravel/php для бэкэнда и vuejs/javascript для фронтэнда. Основная цель моего блога - поделиться с вами своим опытом и знаниями.

View All Articles