Красота кода

August 26, 2016

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

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

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

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

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

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

comments powered by Disqus