Как эмодзи могут улучшить ваш код (на самом деле)

в 10:44, , рубрики: ненормальное программирование, Программирование, Проектирование и рефакторинг, эмодзи

Примечание переводчика: в перерывах между холиварами про JS предлагаю обсудить несерьёзную, пятничную тему:

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

Мы, программисты, читаем много текста — будь то код, логи, комментарии к коммитам, документация или что-либо еще. Эмодзи бросаются в глаза, и их гораздо легче найти на простыне текста, чем обычную строку. Быстрее поиск — выше продуктивность. Хотя даже если на вашей продуктивности это никак не скажется, пользоваться эмодзи — весело! Вот некоторые вещи, которые я опробовал на практике:

Эмодзи в комментариях

Например, вам нужно добавить предупреждение в код, наподобие такого:

Как эмодзи могут улучшить ваш код (на самом деле) - 2

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

Как эмодзи могут улучшить ваш код (на самом деле) - 3

Поскольку эмодзи легче считываются при беглом просмотре текста, они могут оказаться полезными, если вы с коллегами договоритесь помечать ими определенные вещи:

Как эмодзи могут улучшить ваш код (на самом деле) - 4

Ну и опять же, даже если у вас нет практического применения для эмодзи в комментариях, общаться ими с товарищами по команде бывает забавно:

// Почему в этом месте программа падает? Как эмодзи могут улучшить ваш код (на самом деле) - 5
// Сложность O(n²) Как эмодзи могут улучшить ваш код (на самом деле) - 6

А поскольку это всего лишь комментарии, шанс что-то сломать очень мал.

Эмодзи в описаниях коммитов

Описания коммитов в основном довольно унылы, но эмодзи разбавляют обстановку. Я придерживался правила "не более одного эмодзи в сообщении" и пока в нем не разочаровался:

Как эмодзи могут улучшить ваш код (на самом деле) - 7

Примечание переводчика: в одном месте автор всё-таки нарушил свое правило

Хотя это несерьёзный пример, я хочу повториться — эмодзи улучшают читаемость. Если вы смотрите на огромный список коммитов, что в больших проектах не редкость, найти конкретный коммит в списке становится куда проще. В редакторе Atom от Github даже есть гайд по использованию эмодзи в коммитах.

Эмодзи в коде

Я еще не использовал эмодзи в "боевом" коде, но всё равно считаю, что и там им есть применение. Большинство языков поддерживают использование эмодзи в строках, что может оказаться удобным для оживления логов:

Как эмодзи могут улучшить ваш код (на самом деле) - 8

Эмодзи также позволяют объяснить серьезную концепцию из области программирования на легких, забавных примерах:

Как эмодзи могут улучшить ваш код (на самом деле) - 9

Как набирать эмодзи

Продуктивность в использовании эмодзи зависит от того, насколько удобно вам будет их набирать. Я пользуюсь глобальным клавиатурным сочетанием Ctrl + Cmd + Пробел в OS X, которое вызывает меню с эмодзи в большинстве приложений. Оно выглядит вот так (можете судить меня по списку часто используемых символов):

Как эмодзи могут улучшить ваш код (на самом деле) - 10

Кстати говоря, в Windows 10 есть встроенная поддержка эмодзи в экранной клавиатуре, которая также показалась мне довольно удобной.

Эмодзи и редакторы

Пользоваться эмодзи весело, но если ваш редактор их не поддерживает — увы. К счастью, большинство современных сред разработки присоединяются к эмодзи-революции. Я пишу эту статью в Sublime Text и там поддержка есть, хотя некоторые символы всё-таки искажаются.

Как эмодзи могут улучшить ваш код (на самом деле) - 11

Еще я пользуюсь Visual Studio Code, и это редактор справляется с задачей на ура:

Как эмодзи могут улучшить ваш код (на самом деле) - 12

Мой любимый терминал iTerm2 также поддерживает эмодзи. Вот так я отправляю новый коммит:

Как эмодзи могут улучшить ваш код (на самом деле) - 13

К сожалению, пока далеко не все программы поддерживают эмодзи. Многие из нас вынуждены работать с легаси-инструментами, в которых и с обычными-то символами бывают проблемы. Но мы можем это изменить. Если вы пользуетесь программой, в которой поддержки эмодзи нет — создайте тикет или отправьте запрос на добавление функционала. И да свершится революция эмодзи! Как эмодзи могут улучшить ваш код (на самом деле) - 14

Примечание переводчика: хабрапарсер абсолютно не дружит с эмодзи, поэтому пришлось использовать картинки и смайлики.

Автор: impwx

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js