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

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

Что ж, вы поняли, но, конечно, не все так просто. Есть много аспектов, касающихся осведомленности о кодировании.

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

Дизайн и архитектура

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

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

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

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

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

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



Синтаксис и семантика

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

А пока вы должны контролировать себя во время кодирования. Выберите имена переменных, имена функций, встроенные методы, чтобы придать смысл вашему коду. Стремитесь быть ориентиром в своей команде. Нет ничего более приятного для программиста, чем услышать от коллеги: «Эй, какая работа, у тебя красивый код!».

Я хочу показать вам пример того, как семантика может кардинально изменить читаемость вашего кода.

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

  • Получите участие всей команды
  • Получите игроков
  • Получите голы и пасы к воротам

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

У вас есть два варианта. Первый - поместить все в функцию, например, под названием getLeaderBoard (). Представьте себе путаницу в коде, в которой все перемешано внутри этой функции, 3 вызова api, вычисляют счет и упорядочивают игроков, что за беспорядок.

Второй вариант - мой любимый.

function getLeaderBoard() { 
    let teams = getTeams(); 
    let players = getPlayers(teams); 
    let scores = getScore(players);
    return scores.sort((firstPlayer, secondPlayer) => {
       firstPlayer.score - secondPlayer.score;
    });
}

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

Если вы хотите узнать больше о чистом коде:



Напишите тесты, если возможно, воспользуйтесь разработкой через тестирование

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

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

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

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

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

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

Меньше кода, меньше проблем. Если вы хотите узнать больше об этой теме, прочтите книгу:



Просмотрите свой код, просмотрите код других и делайте это снова и снова

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

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

Просматривая свой код, вы можете улучшить его качество до того, как его рассмотрит другой человек.

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

Глупый суслик