Привет, Хабр! Меня зовут Антон Митрохин, я программист, который борется с депрессией. Вчера я прочитал статью о новом (на самом деле уже не очень) языке программирования Carbon. После этого я очень захотел тоже придумать что-то полезное, чем будут пользоваться люди, желательно много людей и долгие столетия. Но проблема в том, что я не самый умный программист, да еще и ленивый немного. Так что цель моя поменялась на такую: придумать что-то полезное и нужное, что я реализую очень быстро.
Думать долго не пришлось. Мои файлы в проекте конфликтуют с остальными файлами по принципу наименования имен переменных, функция, классов и т.д. Проще говоря, я использую не тот naming style. Почему? Потому что МнеТрудноЧитатьВотТакиеНазвания. Ну не воспринимает мой мозг CamelCase и все. Поэтому я пишу в стиле snake_case, а потом запускаю переименовывание всего и вся. Но это лишние телодвижения, а я, повторюсь, ленивый, поэтому решил создать идеальный naming style.
Для того, чтобы сделать это успешно и качественно, сначала нужно сравнить все существующие стили. Сравнивать будем по следующим критериям:
Читаемость. Для меня это самый важный фактор, от этого зависит скорость и качество работы программиста.
Компактность. Для сравнения
compile_foo_and_boo_if_needed
длиннееCompileFooAndBooIfNeeded
на 5 символов. А это значит, что второй стиль компактнее на 17,2%.
Пример |
Читаемость |
Компактность |
|
flat case |
twowords |
- |
+ |
upper flat case |
TWOWORDS |
- |
+ |
camel case |
twoWords |
- |
+ |
pascal case |
TwoWords |
- |
+ |
snake case |
two_words |
+ |
- |
macro case |
TWO_WORDS |
+ |
- |
camel snake case |
Two_Words |
+ |
- |
Как видно из таблицы, все стили имеют минусы. Именно поэтому я разработал свой стиль, который не имеет никаких минусов. Он легко читается и компактен. К тому же им легко пользоваться. Представляю вашему вниманию:
Как пользоваться?
Этот стиль настолько идеален, что имеет всего одно правило написания.
Никаких правил.
Побольше примеров.
Так можно:
DURKA_case
DURKAcase
dURKAcASE
DuRKaCaSe
А так нельзя:
см. правило 1.
Призываю всех пользоваться именно моим стилем, тогда работать будет НаМноГОвЕСЕлЕе и не будет конфликтов в наименованиях.
Комментарии (4)
FrolVII
27.07.2022 16:03+1я программист, который борется с депрессией
1. Никаких правил.
<...>
Призываю всех пользоваться именно моим стилем
Если не можешь победить - возглавь.
Carduelis
Мне кажется, что стоит дополнить картину и посчитать медианное и среднее значение компактности.
Также, я бы ввел коэффициент
DurK-A
(Durability Key (by) Anton), не знаю зачем, но нужно.Carduelis
Разумеется, нужен
eslint-plugin-durka
плагин для Javascript экосистемы. Который бы проверял с помощьюDurK-A
коэффициента близость названия переменных к имеющимся Case'ам. Плагин не будет ругаться ни на что, разумеется. Просто проверять.