Comments 168
жКвери.искать(«тело») красота же.
https://api.jquery.com — не знаю у кого как, у меня за 30 экранов в высоту.
пир духа
но только уже делая паузу.
теперь я знаю кто автор этого скрипта!
function ПреобразоватьСтрокуВФорматПросмотра(Строка, ЗаменитьНа, ОбрезатьДо) {
Строка = Строка.split("<br>").join(ЗаменитьНа);
if( Строка.length > ОбрезатьДо )
Строка = Строка.substr(0, ОбрезатьДо)+"...";
return(Строка);
}
пресвятой Ктулху, я вообще не подозревал что так можно писать и что это будет работать. Чертовы 1с'ники
а если серьезно по теме топика — мне кажется читабельность на практике сильно страдает, вышеприведенный кусок вполне показателен
Начните программировать на 1С.
Вы возненавидите и то и другое.»©
function ПреобразоватьМесяцИзСХислаВСтроку(Месяц) {
if( Месяц == 1 ) return("января"); if( Месяц == 7 ) return("июля");
if( Месяц == 2 ) return("февраля"); if( Месяц == 8 ) return("августа");
if( Месяц == 3 ) return("марта"); if( Месяц == 9 ) return("сентября");
if( Месяц == 4 ) return("апреля"); if( Месяц == 10 ) return("октября");
if( Месяц == 5 ) return("мая"); if( Месяц == 11 ) return("ноября");
if( Месяц == 6 ) return("июня"); if( Месяц == 12 ) return("декабря");
}
Я уважительно и с пониманием отношусь к Христианству в целом и его ветвям в частности.
Но вот эти — «Первым десяти Миряночкам, оформившим заказ, красный шифоновый платок в подарок» — явно секта. Ещё и программер под стать.
Сам я, помнится, переписывал на боярский бота для небызызвестной здесь игры: pastebin.com/e9zx9XeH.
(спойлер не могу вставить)
custom — товар
format custom — товар, который покупатель зарезервировал (оформил в будущую покупку)
так уж лучше по-русски писали бы :(
Может быть не совсем корректно, зато понятно и англичанин это читать никогда не будет.
Это как Sputnik или Tsar.
Подобные «специфические локальные термины» пачками встречаются в проектах рассчитанных на российские реалии и проблема корявых названий на английском кроется не в (не)знании предметной области, а, банально, в языковых различиях.
Резюмируя — в идеале было бы не насиловать мозг себе и коллегам и давать нормальные (читай: без перевода на не связанные с предметной областью языки) названия, но солянка из русских и английских слов выглядит часто выглядит ещё хуже таких вот МатушекМосковий, да и набирать замучаешься.
Но вот насчет русской раскладки — это вы немного погорячились. Нет в стандартной раскладке, но есть сторонние раскладки, в которых не нужно переключаться на английский, чтобы набрать []{}<>.
Я предпочитаю типографскую раскладку Ильи Бирмана, но для программистов, пожалуй, удобнее такая чудная штука, как расширенная раскладка для русского языка Александра Куклева.
На Хабре была статья об этом. Очень облегчает жизнь.
Кстати, украинцам в linux вообще хорошо — стандартная украинская раскладка сразу же поддерживает не только введение большого количества типографских символов, но и некоторые буквы, специфичные для русского языка. В результате для трех языков не нужно держать три расскладки, а хватает только двух.
Валяется у меня в старых заметках вот такой отрывок с какого-то форума:
для русских программистов англоязычные ключевые слова скорее благо чем зло. Почему?
Если встречаешь слово, например, ПРОЦЕДУРА, то к нему у нас прилеплено в сознании много чего — типа "неприяная процедура", "процедура удаления зуба" и т.п… — мало ли какой опыт жизненный у человека был. Все эти ассоциации хочешь-не хочешь, а подымаются из памяти, когда читаешь текст и так или иначе засоряют пространство сознания вещами, не имеющими отношения к делу. С английскими ключевыми словами бытовых ассоциаций у русского человека нет или почти нет, поэтому к ним относишься сразу как к знакам (иероглифам, в каком-то смысле) именно с тем смыслом, который они имеют в языке программирования, а не в жизни. От этого восприятие должно быть легче и соответственно мышление — быстрее. IMHO — так оно и есть.
При этом обратите внимание: Вирт — швейцарец, по английски говорит классно, но язык этот для него не родной. Как и для его студентов, для которых он, собственно и языки придумывает. Потому для него как раз хорошо ипользовать BEGIN/END — легко запомнить. Сами же американцы, как иногда кажется, из кожи вон лезут, чтобы избежать употребления реальных слов в программных текстах в качестве ключевых. Сишный синтаксис, который активно переиспользуют и в Java и в C# — по-моему тому хорошее подтверждение.
- Латынь — была достаточно общеизвестна (как и английский сейчас).
- Комбинация слов собственного языка могла звучать так же неблагозвучно, как и вышеозначенная «ПирДуха», что превращало бы учебный процесс, или процесс обсуждения чего-либо, в балаган. :)
Все это напоминает мне наш с другом университетский проект по курсу трансляторов под названием «Сало» с синтаксисом на украинском языке, только этим мы занимались в рамках курсовой работы и были студентами. А не предлагали куда — либо внедрять.
(смотреть до просветления)
Простой, кстати, как валенок — проверяет введённое число на равенство 23.
Выразительность, кстат, отличная. Один иероглиф — одна синтагма.
module.exports = function(content) {
А что это Вы сами используете имена переменных на английском?
Ну, пожалуйста, скажите, что вы просто прослоупочили 1-е апреля, и чтобы «материал не пропадал» опубликовали сейчас?
Вам же не трудно признать такую мелочь, так? :)
использование английского языка как основы для языков программирования не обусловлено ничем, кроме того, что «так исторически сложилось».
На самом деле использование английского языка имеет ряд преимуществ:
— отсутствие склонений и спряжений делает текст программы похожим на нормальный язык. В коротком тексте это не чувствуется, но в большой программе на русском будет порядком конфликтов падежей и склонений — это будет раздражать и отвлекать.
— если английский для вас неродной, то вообще все хорошо. Вы думаете о переменной, а не об ее названии.
— использование латиницы с всего 26 буквами вместо 33 позволяет иметь все нужные символы на 1 раскладке стандартной клавиатуры. Сейчас для того, чтобы ввести фигурные скобки и знак «меньше», вам пришлось переключать раскладки.
— это стандартный ASCII, который везде одинаков. Никаких ошибок перекодировок, битого юникода и прочего быть не может.
— используемый набор слов очень простой. Это явно проще писать, чем «впихнуть» и «совместно».
Поэтому мне пока кажется, что наоборот, более жесткий порядок слов в предложении придает более «алгоритмичную» структуру фразам, которую удобнее «парсить» глазами — выхватывая ключевые слова в нужном порядке. Вы правильно пишете, что такое чтение напоминает чтение заголовка — когда из минимума слов понимается смысл. В худшем случае — абстрагируемся от текста вообще.
<а> — это не якорь.
<а> — это абзац.
Так что все православно.
Тем, что первая буква в слове абзац — а? Мы ведь все еще о руссифицированном хтмл?
Вот, кстати, еще один недостаток «локализованных» ЯП. Сейчас мы точно знаем, что вся лексика ЯП почти гарантированно набрана символами из пространства ASCII, в ином случае мы рискуем не разобрать, какими символами набрано то или иное слово. Например, в какой раскладке набрано слово «Kyсoк»? Лишний источник неочевидных ошибок.
<c></c>
— ссылкосотрудники.длина
выдаёт ошибку, пока не заметит, что в русском ЯваСкрипт свойства и методы не проверили спеллчекером (длинна
в примере, видимо, ошибок не выдаёт).«Встречаются два 1с-ника:
— Как дела?
— Ну, если тебя интересует, как дела, конец если...»
Спасибо вам! А уж за березку — особенно!
alert — внимание, filter — фильтр, map — карта, slice — часть
. Глаголы у вас то в инфинитиве, то в повелительном наклонении (do — сделай
). Ошибки всё ещё есть (попробывать
вместо попробовать
).Много непоследовательностей:
super — супер и log — логировать
(если уж переводить на естественный язык, так переводить всё); break — стоп и continue — продолжить
(вместо обоих глаголов в английком, в русском междометие и глагол); var — пер и const — константа
(то сокращаете, то нет); splice — соединить и join — объединить
(разница сливается); typeof — тип и indexOf — номерВ
.Покажите сначала свои варианты хорошему переводчику с английского и русскому филологу, они смогут исправить самые грубые несоответствия. Потому что
throw — бросить, yield — уступить, unshift — раздвинуть, concat — связать
сомнительно семантически, а push — впихнуть
— стилистически.UPD Товарищи ставящие минусы, ну имейте хоть капельку чувства юмора.
Вынесите это предупреждение в начало.
Потому что людям без чувства юмора(типа меня) уже на середине не хочется читать, а хочется минусовать. Предупреждение можно и не увидеть.
Сейчас он заменяет все подряд. И если я хочу вставить просто англйиский текст в строковую переменную, лоадер доберется и до нее.
Вообще конечно забавно выглядит.
Бедные 1Сники, наверное так мучаются :)
цикл(пер и=0; и<сотрудники.длина; и++)
Как бы не так
Должно быть
для(пер и=0; и<сотрудники.длина; и++)
Непонятно, кому и как пришло в голову обозначить цикл словом «для». Хорошо, что когда я впервые коснулся программирования, я не знал английского языка, и команды для меня не значили ничего, кроме того, что написано в мануале.
Идеальный язык программирования не должен использовать лексику естественных языков.
Звучит примерно так: «выполнить определенный код ДЛЯ 'и' равной от 0 до количество сотрудников.»
Слово «цикл» здесь совершенно неуместно.
В питоне и перле есть конструкции с более очевидным порядком слов: [х*й для х из списка_х]
. Да, "списка". Или уж все слова английские — или надо делать склонение. Иначе получился монстр из зловещей долины.
reverse — развернуть
если join — объединить, то slice — разбить, разрезать, разделить…
some — любой
Начал делать, чтобы показать одному малому, который с английским пока не дружит, как программируют игры. Изначально даже хотел подправить синтаксис, чтобы решить проблему переключения раскладки на символы { } [ ].
Что Я об этом думаю
И всё же мне не нравится такая идея, как уж повелось по-английски писать код, так уж пусть и дальше будет.
Сюда можно отнести, как уже сказали, и проблемы с кодировкой, и частое переключение раскладки, и как-то неудобно читать русские слова, да ещё в разных склонениях ну и всё такое, то, что код может получиться длиннее, что будут путаницы какая же это буква, русская «а» или английская «a», ну и так далее…
В коде есть такая замечательная штука, как комментарии. Так вот, если программисту что-то и не понятно, пусть пишет для себя /* большие комментарии с пояснениями */
И коду это особо не помешает, так как комментарии можно легко убрать…
Вот моё мнение.
Я как-то заметил, что в современном Perl никто не мешает делать идентификаторы на русском языке. Прямо из коробки. Одна засада — сторонний софт, типа IDE, форматировщиков, чеккеров это не поддерживает. В JavaScript — скорее всего, такие программы нарвутся на те же проблемы. Но Ростелеком этих ретроградов тоже прогнёт либо запретит.
_хттп://i.imgur.com/CQdySGn.jpg
Авторам-смутьянам все ж таки желаю обрести истинную веру :)
https://habrahabr.ru/post/176243/
Гвидо Ван Россум — создатель Питона считает что код пишется 1 раз а читается много.
Достаточно много программистов используют кириллические названия переменных и функций — это позволяет:
1. избежать пересечения пространства имён и сразу разделять свой код/переменные/функции от чужих (это самое важное помоему!!)
2. самодокументирование кода — комментариев меньше или они описывают более общие вещи
3. обфусикация кода для иностранных разработчиков/хакеров/аналитиков
Недостатки:
1 — необходимо следить чтобы исходники были в кодировке UTF-8
2. Тут не все так однозначно. Самодокументирование кода будет ровно до того момента, пока сам код решает какие-то простые задачи. Чем более будет сложный алгоритм — тем самодокументирование будет все хуже и хуже. В конце концов оное даже сможет сбить вас с толку. Напр., из последнего — в коде была такая переменная как «кластер». И вот долго я ее курил, что это? Что за кластер? Чего? Хотя сама задача не предполагала вообще наличие чего-то «кластеро-подобного». Затем, видимо такой же чел, который ранее уже раскурил тему, где-то в потрохах описал, что кластер — это группа аналогии. Вроде бы интуитивно все стало понятно, но без такого коммента, самодокументирование только сбило с толку. И вот такого, его становится все больше и больше, когда алгоритмы описания чего-то становятся все сложнее и сложнее. Я стараюсь сначала все таки читать комменты в таких случаях, а потом сам код. Хотя и в оригинале, очевидно, проблема будет аналогичной.
3. Тут в яблочко, но кажется, это в плане js — все таки минус, нежели плюс.
«цыкл» или «цикл», вот в чём вопрос!
… В русском языке традиционно применяются французские «ёлочки», а для кавычек внутри кавычек и при письме от руки — немецкие „лапки“…
… Если по техническим причинам невозможен набор кавычек другого рисунка, кавычки одного рисунка рядом не повторяются…
пер сотрудники = [«Владимир», „Дмитрий“, «Николай»];
Как только примете за стандарт — сразу перехожу!
тогда уж «тяни-запросам» ;)
Даешь Угловой.жс!
https://lenta.ru/news/2016/05/10/russian_times/
JavaScript по-русски — pycckuu.js