Найти тему

Красивый код

Один мой знакомый программист однажды сказал, что сильно опечален тем фактом, что его друг такой же программист написал некрасивый код. Вообще должен ли программный код быть "красивым", а не исключительно выполнять свою функцию и приводить к результату, т.е. быть эффективным? В его понимании красивый код - это код, который складывается в красивую комбинацию команд и символов, сложен он или прост. Однажды мне пришлось написать скрипт на языке запросов, обладая начальными знаниями языка, я соединила ряд простых подзапросов в один запрос и получила такой же результат, как и мой коллега, написавший скрипт в две строчки в отличие от моего длиннющего набора. Кстати говоря, еще одной важной характеристикой кода является производительность системы, к которой он обращен, т.е. ее отклик или ответ. Поиск по всей базе данных, конечно, занимает больше времени и нагружает систему больше, чем если изначально ограничить поиск или обратиться ко view (готовая таблица с данными, удовлетворяющими определенным условиям). Оба наших кода были неидеальными в смысле их "красоты", как посчитал бы мой знакомый, но комбинация команды и символа select * from немного его преображала. Дело в том, что это очень простая и понятная команда "выбрать все данные и искать в них". По сути эта команда лишняя на мой взгляд, если можно сразу задать условие. Она нужна, когда нет условий и нужно просто выбрать все данные. Хотя не все условия прописаны в языке, тогда она и приходит на помощь.. И все-таки комбинация красивая, поэтому она так нравилась мне и Коле (тот самый коуч). В качестве примера также приведу формат названия файлов и папок, который использовал один мой коллега дизайнер опять же таки для красоты: --Резюме-- или --Мое резюме--, это красивее, чем --Резюме--07.08.2024, --Резюме Мурашко О.И.--, Резюме Мурашко О.И. или __Новая пака jghvg;ewgj/_, если убрать символ и оставить Резюме или Мое Резюме тоже неплохо, но не так круто как с двумя черточками. Кстати, лень или пофигизм порой забывает убрать абракадабру, а может, это просто rational mind экономит ваши ресурсы, глубинные и внутренние, кто знает. Например, у отдела кадров такой файл вызовет всплеск негодования, поскольку его переименование займет некоторое время. Т.е. символ +слово это красиво, но не все символы обладают этим свойством. Например, ;Резюме или $Резюме похоже на часть какого-то кода, но для именования не совсем подходит , поскольку лично у меня вызывает легкое отторжение и ненужные ассоциации. Просто * - это звездочка, она светит на небе, романтично черт побери, а две черточки - это не одна черточка, а две, такого символа нет, ты его создал сам нажатием два раза на клавишу. Даже яндекс предлагает тебе купить красивое имя почты вместо заведомо некрасивого, который предлагает бесплатно. А вообще язык это интересно, это красиво, любой, будь то программные символы или иероглифы. В каждом языке есть красивые и некрасивые слова, зависит от значения слова и его функции, например, слово "любовь" красивое, а "любой" нет, в английском языке это "love" и "any", да any тоже не блещет, а вот @any круто. Жаль ни в одном языке нет символа в виде рисунка цветка для обозначения цветка, в некоторых случаях он бы пригодился, хотя "цветочек мой любимый" тоже неплохо. А вообще все это просто напросто творческий голод, который все поддает критике и не дает спокойно спать, а не вздыхать от восхищения и умиления, ну да ладно.