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

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
Мы часто романтизируем само понятие программирования, представляя его как форму абстрактного искусства, науку или даже некую разновидность магии. На самом деле, истина имеет куда более практичный и приземленный вид. Код, по своей сути, является формой общения. В начале своей книги «Изучаем паттерны проектирования на JavaScript» я пишу: «Хороший код – это что-то вроде любовного письма следующему программисту, который будет заниматься его поддержкой». Это личная переписка одного разработчика с другим, преодолевающая временные и пространственные границы.

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

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

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

SOLID, DRY, KISS и YAGNI – это не просто принципы, это то, что составляет фундамент хорошего кода. Они направляют разработчика к разумным решениям, помогают ему балансировать между переусложненностью и недостатком сложности и, в конечном счете, формируют то «любовное письмо», которое получатель оценит по достоинству.

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

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

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

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

Таким образом, хороший код – не только любовное письмо, но и то наследие, которое останется после нас тем, кто идет следом.
Источник: https://habr.com/ru/companies/productivity_inside/articles/766970/


Интересные статьи

Интересные статьи

Когда нужно создать некий новый элемент, самым лучшим первым шагом будет создание элемента, который ничего не умеет делать. С таким подходом вы, по крайней мере, можете быть уверены, что начинаете раб...
22 августа я нежданно-негаданно получила письмо от Apple, уведомлявшее меня, что у меня есть новое сообщение App Review. Оно было связано с моим приложением WorldAnimals, простенькой игрой про угады...
Большая часть следующий статьи была завершена в начале 2020, в то время вендор пытался различными путями восстановить большое количество заражённых устройств, мы делились нашими находками с вендор, та...
(Или как мы ваяли идеальное демо для самого богатого человека в мире)На часах пять утра. И еще 5 часов остается до встречи с самим Биллом Г. Глаза у меня красные и припухшие. Я едва способен соображат...
Под катом можно увидеть, как прошла первая встреча сообщества, а пока — важный анонс для тех, кто живет в Нижнем или будет там 21 декабря (это суббота). Приходи на новые посиделки: Дмитри...