Зачем я форматирую код

Mar 05, 2013 15:22

Программисты бывают разные. Кто пишет код как попало, кто-то придерживается неких общих стандартов, кто-то пишет педантично соблюдая определенную конвенцию. И хотя часто выходит так, что оформление кода и его тактико-технические характеристики не коррелируют между собой, не менее часто выходит так, что коррелируют более, чем непосредственно. Среди прочих особое место занимают две вещи, это сопровождаемость кода и его развитие. Безусловно, они связаны, но требования к коду различаются. В обоих случаях крайне важно, чтобы код был читаемым и понятным даже спустя долгое время после его написания. Те, кто радостно шутит о том, что даже свой код через месяц уже не читабелен, просто еще не выросли. Те, кто наотрез отказывается писать код в Блокноте, мотивируя это тем, что в любой IDE есть автодополнение и куча других удобных вещей - любители, они не выросли еще в большей степени, чем предыдущая категория. Те, кто пишет тестовый код, как Бог на душу положит, утешая себя надеждой, что production-версия будет закодирована на "отлично" - тоже студенты. Одна из составляющих профессионализма - внимание к мелочам. Такие вещи, как венгерская нотация, форматирование и другие, направлены на то, чтобы сделать код более читабельным, более насыщенным смыслом, а в итоге, более понятным. Безусловно, профессионалы должны уметь читать и понимать даже обфусцированный код. Но это не значит, что умение хорошо читать автоматически дает индульгенцию на визуальную чистоту и читабельность кода, писанного самостоятельно. Аргументы типа "подсветка синтаксиса" и "IDE сама укажет тип переменной" выглядят, мягко говоря, не профессионально. Суть в том, чтобы код мог говорить сам за себя, чтобы переменные, имена функций, методов, определения, языковые конструкции были такими, чтобы сами могли сообщить о себе достаточно информации для понимания контекста их использования без дополнительных инструментов, читай - просто в Блокноте. Смысл кода не в том, чтобы описать алгоритм, а в том, чтобы  донести идею, стоящую за этим алгоритмом. Поскольку одну и ту же идею можно выразить по-разному. Порой настолько, что два алгоритма, решающие одну и ту же задачу не похожи до последней точки с запятой...

программирование, работа, разработка

Previous post Next post
Up