Development

Заботьтесь о коде

(В оригинале – You Gotta Care about the Code)

Не надо быть Шерлоком Холмсом, чтобы заметить, что хорошие программисты пишут хороший код. А плохие – нет. Они пишут нечто монстроподобное, и это потом приходится разгребать остальным. Вы, конечно же, хотите писать код хорошо, не так ли?

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

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

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

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

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

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

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

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

Автор оригинала – Pete Goodliffe