Какие примеры кода вызывали у вас восхищение — отвечают эксперты

Мечтаете ли вы стать кумиром для программистов? Наш подписчик, наверное, стремится к этому, и он обратился в нашу редакцию с вопросом:

«Какие примеры кода вызывали у вас восхищение?»

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

Денис Цыплаков

Денис Цыплаков, Solution Architect DataArt

Написать сложный код очень просто. Практически каждый начинающий программист начинает писать сложный код буквально через пару дней после начала обучения. Очень сложно написать простой код, решающий сложную задачу. Именно такой код вызывает у меня восхищение. Такой код нечасто встретишь в прикладном программировании, как правило, гениальные программисты пишут код где-то в продуктовых компаниях, разрабатывая разные фреймворки и библиотеки. Один из примеров такого кода для меня — исходный код Java Collections Framework, написанный командой под руководством Джошуа Блоха. Там все очень просто и понятно, но написано так, что ни прибавить, ни убавить. Абсолютно каждый символ в коде там неслучаен и стоит именно в том месте, где должен.

Виктор Цветков

Виктор Цветков, software-архитектор, Райффайзенбанк

Конкретные сниппеты вспомнить не могу, потому что не коллекционирую их. Возможно, кстати, и стоило бы.

Регулярно испытываю wow-эффект на площадках типа Hackerrank и Codewars. Правда, иногда этот wow-эффект разбавляется некоторой досадой: когда тратишь несколько часов на решение задачи, пишешь что-то рабочее, а потом видишь решение в разы короче и эффективнее твоего — сильные эмоции гарантированы.

Алексей Голубев

Алексей Голубев, технический директор онлайн-кинотеатра Okko

Одна из наиболее вдохновляющих историй последних лет про красоту кода связана с публикацией на GitHub исходников от бортового управляющего компьютера «Аполлон». Наверное, тяжело просто найти красоту и вдохновение в коде на ассемблере, но если вспомнить, что именно этот код работал на космических аппаратах лунной программы «Аполлон» и отвечал за посадку на лунную поверхность, то это все меняет, ведь так? Кроме того, не стоит забывать, что это 1969 год, то есть код написан 50 лет назад, при этом цена ошибки в нем несколько иная, чем неоткрывающаяся страничка в браузере. Но при этом в нем много кусков и комментариев, которые не чужды программистам до сих пор: https://github.com/chrislgarry/Apollo-11

Темир Сангаджиев

Темир Сангаджиев, Frontend-разработчик Onytrex.com

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

Для того, чтобы фрагмент кода вызывал теплые чувства лично у меня, ему не нужно быть невероятно быстрым, производительным, гибким, подходящим под все решения (хотя это все тоже неплохо). Ему достаточно лишь иметь 2 важных составляющих: простоту и понятность. Не все программисты в наше время понимают, что простой и ясный код под конкретную задачу всегда будет понятнее как другу-программисту, так и машине. Нет ничего хуже, чем сидеть и копаться в наработках предыдущего программиста, который отличался любовью к запутанным кодам!

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

Дмитрий Казаков

Дмитрий Казаков, руководитель отдела веб-разработки RU-CENTER

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

Напоминаем, что вы можете задать свой вопрос экспертам, а мы соберём на него ответы, если он окажется интересным. Вопросы, которые уже задавались, можно найти в списке выпусков рубрики. Если вы хотите присоединиться к числу экспертов и прислать ответ от вашей компании или лично от вас, то пишите на experts@tproger.ru, мы расскажем, как это сделать.

Подобрали три теста для вас:
— А здесь можно применить блокчейн?
Серверы для котиков: выберите лучшее решение для проекта и проверьте себя.
Сложный тест по C# — проверьте свои знания.

Также рекомендуем: