Кодирование на других говоривших языках

Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:

  1. Вызов метода экземпляра объекта null.
  2. Доступ или изменение поля объекта null.
  3. Принимая длину null, как если бы это был массив.
  4. Доступ или изменение слотов null, как если бы это был массив.
  5. Бросок null как будто это было значение Throwable.

Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null.

Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html

105
задан 2 revs, 2 users 90% 28 April 2015 в 00:18
поделиться

26 ответов

Если я понял хорошо, что вопрос на самом деле: "каждый кодер в мире знают, что достаточно английского языка использует те же самые зарезервированные слова, как я делаю?"

Хорошо.. Английский язык не является предметом здесь, но зарезервированными словами языка программирования. Я имею в виду, когда я запустил приблизительно 10 лет назад, у меня не было подсказки английского языка, и тем не менее я смог программировать простые вещи путем изучения языка программирования, даже когда я не знал то, что они имели в виду (на английском языке). На самом деле, это помогло мне выучить английский язык.

, Например. Я знаю, чтобы сделать "iteraciГіn" (повторение, конечно), я должен был записать:

 for( i = 0 ; i < 100 ; i++ ) {}

мне "для",""; и "++", где простые иностранные слова или символы. Позже я узнаю, что "для" предназначенного "параграфа" и, "в то время как" предназначено "mientras" и т.д., но тем временем я не должен был знать английский язык, но в моем случае, в чем я нуждался, должен был знать "C".

, Конечно, когда я должен был узнать больше вещи, я должен был выучить английский язык, поскольку документация записана на том языке.

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

Похож на оператор переключения в ударе: случай.. esac. Что такое "esac"... для меня конец оператора переключения в ударе.

я предполагаю, что это - то, что мы называем "абстракцией"

158
ответ дан 4 revs, 2 users 93% 24 November 2019 в 03:54
поделиться

Я думаю, что WordBasic был локализован. WordBasic использовался для записи макроса для в Word, прежде чем VBA использовался.

, Если бы я помню его правильно, только WordBasic, записанный в английской версии, выполнился бы на всей локализованной версии. Если Вы записали бы голландскую версию, Вы могли бы только выполнить ее на голландском Word.

0
ответ дан GvS 24 November 2019 в 03:54
поделиться

Я считал много кода, но проблема всегда в переменной/именах методов и комментариях, если они комментируют свой код их собственного языка, с помощью языка специальные символы как японский язык или кириллица, мы в беде! но ключевые слова, я думаю, что они останутся на английском языке как они

1
ответ дан milot 24 November 2019 в 03:54
поделиться

Это было бы бессмысленно, по моему скромному мнению, к i18n язык синтаксис . Это просто уничтожило бы любой вид мобильности.

единственное исключение образовательные языки, такие как ЛОГОТИП. Они были разработаны для изучения простоты, таким образом, мобильность не является проблемой.

1
ответ дан Mike Hordecki 24 November 2019 в 03:54
поделиться

Здесь в Австралии мы все еще должны записать цвет как цвет . Однако я действительно нахожу его раздражающим, когда другие (австралийские) разработчики, работающие над австралийским проектом, решают, что имена внутренней переменной должны быть записаны американский путь.

2
ответ дан Dean Rather 24 November 2019 в 03:54
поделиться

Вашим вопросом является интересный относительно Perl, потому что это - синтаксис, разработан для следования за (английским) естественным языком. Интересно, делает ли это его более трудным для неанглоговорящих...

, Конечно, Perl и Perlers отказываются играть по стандартным правилам. Сумасшедший ученый Damian Conway записал Язык:: Romana:: модуль Perligata , который использует черную магию фильтров источника позволить Вам писать Perl на латыни!

2
ответ дан Michael Carman 24 November 2019 в 03:54
поделиться

Язык сценариев Filemaker локализуется. Сценарии (и данные!) хранятся в ужасном "sorta каноническая" форма.

Поэтому, если Вы пишете сценарий в американской версии, затем откройте ее во французской версии, все ключевые слова и имена встроенной функции будут на французском языке. Но почему это не будет работать?! Ага! Французская версия использует"", как десятичная точка, и поэтому избегать использования неоднозначности""; к аргументам отдельной функции - где американская версия использует "." и"", соответственно. Это преобразование необходимо сделать себя.

, Таким образом, Вы работаете через невероятно плохой интерфейс редактирования сценария (Вы не можете записать сценарии как текстовые файлы) починить все эти вещи. Это работает! Здорово! результаты неправильны! О нет! Ага! Дата Jan-7-2004, которую Вы ввели в американскую версию, интерпретируется как July-1-2004 - по-видимому, даты не только отображены, но сохранил в зависимом от локали порядке. я разыгрываю Вас ? Нет.

[Примечание: Filemaker 8 и 9 может быть нормальным - я только когда-либо работал с 3 - 7.]

2
ответ дан Tom Future 24 November 2019 в 03:54
поделиться

Когда я был ребенком, мы перешли к Франции, и в музее мы перешли в, я не забываю находить дисплей, который показал Вам, как записать компьютерные программы. Язык был некоторым ОСНОВНЫМ вариантом, и я отчетливо помню его с помощью ПОТОКА вместо и так далее. Мне было 7 лет и только что учился ОСНОВНОЙ, и для меня казалось абсолютно естественным, что у французов будет свой собственный диалект как это!!

я предполагаю, что это, возможно, было LSE, который я видел?

2
ответ дан Luke Halliwell 24 November 2019 в 03:54
поделиться

Вообще говоря, большинство программистов адаптируется к английской форме. Я учился программировать, когда мне было 7 лет и только говорил на иврите (который является справа налево), и без английского языка, который сделал его вполне захватывающим опытом.

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

единственный язык я знаком с этим, на самом деле был переведен, был старый добрый Логотип (все еще удивительный по сей день).

2
ответ дан Uri 24 November 2019 в 03:54
поделиться

В нескольких проектах VBA я продолжил работать (да, очень рано в моей карьере), мы должны были обнаружить версию офиса, который был установлен на машине пользователя, и измените формулы, используемые в электронных таблицах соответственно.

, Поскольку я программирую в португальской "СУММЕ", должен был бы быть переведен в "СОМА" и т. д. и т. п. Я просто не могу предположить, что необходимая работа заставляет это произойти на нескольких языках. Кто-либо еще пострадал с этой проблемой?

3
ответ дан rshimoda 24 November 2019 в 03:54
поделиться

Не высмеивайте это. Несколько лет назад Microsoft объявила о G# (немецкий Sharp) - C# с немецкими ключевыми словами и API. Конечно, это была шутка Жертв первоапрельской шутки, но весь сайт об этом выглядел настолько реальным и профессиональным (и был на microsoft.com). Страшный.

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

нет, английские ключевые слова и идентификаторы прекрасны. Хотя некоторые могли бы спорить, должен ли это быть Цвет или Цвет:)

3
ответ дан OregonGhost 24 November 2019 в 03:54
поделиться

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

фунт: я, оказывается, думаю, что испанский язык является намного более хорошим языком, чем английский язык; но перевод НЕПРАВИЛЬНЫЙ

3
ответ дан Javier 24 November 2019 в 03:54
поделиться

Я нахожусь во французской команде, разрабатывающей программную систему в C#. Несмотря на то, что ключевые слова языка программирования являются якобы английскими, я предполагаю, что Вы испытали бы большие затруднения при чтении кода как всех имен функций, переменных, комментариев к коду, таблиц базы данных и столбцов, технические спецификации, протоколы и так далее, являются всеми на французском языке, включая те прекрасные символы с диакритикой Г§, Г©, ГЁ, Г№, и т.д. Я даже не уверен, работала ли система даже в другое место из-за ошибок локализации, таких как доверие запятой, чтобы быть десятичным разделителем по умолчанию.

Иначе, WinDev является популярной платформой программирования во Франции, и ее язык программирования, WLanguage имеет ключевые слова или на французском или на английском языке, видят и пример здесь: текст ссылки

4
ответ дан Patrick J Collins 24 November 2019 в 03:54
поделиться

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

После видения языков как Brainf ** k и Пробел я думал о создании языка как это: это было бы идентично C кроме Вас, используют закрывающие фигурные скобки для открытия, открывая фигурные скобки, чтобы закрыть, подкачать значения + и - * и/; и:> и < и т.д.

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

int foo)int i, char c( }
    int six = 2 / 3:
    int two = six + 4:
    if )i > 0( }
        printf)"i is negative"(:
    {
{
4
ответ дан Dinah 24 November 2019 в 03:54
поделиться

AppleScript был однажды доступен на французских и японских диалектах. Я не знаю, почему это было забрано.

4
ответ дан Chris Lundie 24 November 2019 в 03:54
поделиться

Я британец, и проблемой, с которой мы часто сталкиваемся, является американское/Британское столкновение написания. Это часто происходит при программировании связанных условий тех, которые Инициализируют () или Инициализируют (), Анализируют () или Анализируют () и т.д. Это может (иметь) вывод к попытке задач к методам переопределения и иногда трудно определить.

, Так как платформа (в нашем случае C#) была разработана американцами, мы нашли, что это лучше быть последовательным и использовать американские написания. Мы даже принимаем Цвет.

у Нас есть соединение национальностей в наших группах разработчиков, и большая часть небританцев склоняется к американским написаниям естественно.

6
ответ дан Paul McClean 24 November 2019 в 03:54
поделиться

Язык программирования определяет ключевые слова и имена стандартного класса, и это - лучшая практика, чтобы дать определяемым пользователем типам, переменным и функциям также английские имена (как неноситель языка, которого я могу сказать;-).

Так да, если все хорошо, Вы будете в состоянии считать код.

Однако языки как Java и Perl позволяют полный набор Unicode для идентификаторов, поэтому если кто-то запишет его имена классов в Кандзи, у Вас, вероятно, будет проблема.

Обновление: Для Perl существует модуль шутки , который позволяет Вам писать Perl на латыни. Но это - действительно просто это, шутка. Никто не использует вещи как это серьезно.

115-секундное Обновление: идея локализованных языков программирования не настолько смешна. Макроязык Excel локализуется, но к счастью он хранится на одном каноническом языке (английский язык) в файле, таким образом, локализация является просто слоем сверху нормальной вещи. Такие вещи только имеют смысл для маленьких "программ" для "реальных" программ, которые становится трудно поддержать.

10
ответ дан 3 revs 24 November 2019 в 03:54
поделиться

Как многие люди уже указали на большинстве языков программирования, просто необходимо изучить несколько ключевых слов, таким образом, не имеет значения так очень, если они находятся на английском языке (или язык кроме Вашего, в этом отношении). Это - просто символ, который Вы связываете с некоторой конструкцией. Например, в VB Вы имеете "ТОГДА", который на многих языках C-стиля был бы "{" и он не имеет большое значение в удобочитаемости (хорошо, по крайней мере, это - то, как я вижу его, будучи неанглийским носителем языка).

, Но где вещи могут иногда становиться волосатыми, и где выбор (естественных) вопросов языка находится в именовании идентификаторов. Если названия переменных, функций, классов, и т.д., не имеют понятного имени для Вас из-за языкового барьера, после даже самого простого кода может быть довольно сложным.

я помню, что кто-то однажды дал мне короткий отрывок Actionscript, взятого из некоторого блога. Имена были на немецком языке и так как я не произношу слово того языка, материал, возможно, назвали var_123, var_562 или func_333 также (и вероятно для меня будет легче помнить имена или по крайней мере иметь шанс писания правильно их, не копируя и вставляя). Так как это было коротким, автономным отрывком, я использовал онлайн-переводчик, чтобы дать тем Вар и функционирую понятные имена на моем родном языке (испанский язык) и после этого, все было ясно. Дело в том, что код был на самом деле прост, но я только смог иметь смысл из него без слишком большого (ненужного) дополнительного усилия как раз в то самое время, когда я преодолел языковой барьер.

С тех пор, я переключился на использование английского языка для именования идентификаторов. Нравится ли Вам это или нет, это - "koine" для программирования, технического и вообще технического материала. Большинство API записано на английском языке, и так большая часть документации (и вероятно лучшие ресурсы, которые можно найти, находятся на английском языке также). Как хорошее в стороне, это сохраняет Ваш код более когерентным с кодом, с которым Вы, вероятно, будете взаимодействовать, и я думаю, что это имеет тенденцию быть более компактным и сжатым, чем другие языки как испанский язык (который иначе был бы моим естественным выбором).

, Конечно, если Вы не можете понять, по крайней мере, некоторый английский язык, проблема остается тем же, таким образом, это не идеальное решение. Но, учитывая многих разработчиков из многих разных стран возможности состоят в том, что общий язык для них для передачи (через код и конечно другие средства) будет английским. Так, выбор English является, возможно, наилучшим вариантом, даже при том, что это было бы не идеальное решение этой проблемы.

13
ответ дан Juan Pablo Califano 24 November 2019 в 03:54
поделиться

Я действительно не думал слишком много о программировании на японском языке прежде, но здесь мы идем, с помощью примера кода вопроса.

только Используя операторы языка на японском языке с переменными на английском языке:

// In Japanese, it makes more sense to put the keywords/modifiers as
// postfix expressions rather than prefix expressions.
(i < size)か {
     (l[i])は {
     1だ:
         「もしもし。」を書く;
     省略時値:
         「いいえ、いいですよ。」を書く;
     }
} ない {
     「はい、ありがとうございます。」を書く;
}
25
ответ дан 2 revs 24 November 2019 в 03:54
поделиться

На языке Java некоторые методы нужно назвать (по крайней мере, частично) использованием английского языка из-за соглашения JavaBeans.

Это соглашение требует, чтобы свойство X было установлено через пару getX () и setX () методы. Здесь во Французской Канаде, где некоторые разработчики обязаны кодировать на французском языке, это приводит к следующей пародии:

interface Foo {

  Color getCouleur();

  void setCouleur(Color couleur);
}
27
ответ дан 2 revs 24 November 2019 в 03:54
поделиться

Я испытываю затруднения при нахождении ссылок, но мне напоминают о трех историях.

А хакер Lisp защищает бессмысленные функции как "командир" и "автомобиль" путем сравнения их с программированием на неродном языке: http://people.csail.mit.edu/gregs/ll1-discuss-archive-html/msg01171.html

, Когда Мацумото Yukihiro ("Matz") начал разрабатывать Ruby, он использовал английские ключевые слова даже при том, что он писал всю документацию на японском языке! . Не было никакой английской документации для Ruby в течение пары лет и очень немногих американцев, использующих язык. Но теперь это - язык мирового класса и это, то, что это родилось в Японии, является только, представляющим исторический интерес. Если бы язык использовал ключевые слова в hiragana, ему намного больше было бы тяжело завоевывать популярность.

я прочитал эссе однажды - возможно, кто-то еще может найти его, Google не является никакой справкой сегодня - который предположил, что перевод ключевых слов был дезинформирован, потому что слова не на самом деле английские - они - жаргон. Не только делают (для использования примеров выше) , поток параграфа и не совсем имеет точное подразумевать, которое для имеет на английском языке непрограммистам, фраза "для цикла" является jibberish. Даже американцы должны изучить новое значение. Таким образом для перевода поверхностного значения слов на другой язык больше похоже на создание межъязыковой игры слов вместо того, чтобы на самом деле быть полезным.

26
ответ дан jes5199 24 November 2019 в 03:54
поделиться

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

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

Редактирование : Я просто возвратился в прошлое своей юности, где я вошел в таблицы отображения своего TRS-80, встроенного ОСНОВНОЙ для переключения ключевых слов на французский язык. Я мог изменить все ключевые слова, но я не мог сделать ни одного из них больше. Сделанный для забавных программ.

3
ответ дан 2 revs 24 November 2019 в 03:54
поделиться

на итальянском

se (i < dimensione){
    scegli
        caso 1:
            stampa "ciao"
        mancante:
            stampa "no, grazie"
} altrimenti {
    stampa "sì, grazie"
}

Чтобы подтвердить опасения некоторых предыдущих плакатов, я видел Fortran код с макросом включает перевод всех ключевых слов с английского на французский. Разрешите мне не продолжать это.

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

1
ответ дан 24 November 2019 в 03:54
поделиться

Единственный язык , который я видел локализованным, - это Excel с свои макросы. Если вы попытаетесь суммировать столбец с помощью итальянской версии Office, вам нужно будет написать SOMMA (A1: A10) , а не SUM. Это позор.

Кстати, только потому, что это весело, вот как должен выглядеть ваш код с итальянскими ключевыми словами:

se (i < size){
    commuta
        caso 1:
            stampa "hi there"
        normalmente:
            stampa "no, thank you"
} altrimenti {
    stampa "yes, thank you"
}
4
ответ дан 24 November 2019 в 03:54
поделиться

Есть некоторые языки, на которых есть переведенные ключевые слова. Например, формулы Excel. Если вы запишите расчеты в электронной таблице, они будут на вашем языке.

К счастью, это не обычная практика, и даже не говорящие по-английски, такие как я, слава Богу, что существует стандартный язык для ключевых слов:

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

А где остановиться? Вы можете вообразить C в древнегреческом?

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

Однако есть один случай, когда использование имен методов и комментариев на родном языке может быть хорошей практикой: в стране третьего мира. Я собираюсь через несколько месяцев в Сенегал, чтобы управлять проектом Django. В Сенегале очень высокий уровень анализа алфавитов, и поэтому уже здорово, что они тратят энергию на улучшение своих знаний в области программирования. Французский здесь является родным языком, поэтому было бы неэффективно заставлять их одновременно изучать вычисления и новый язык.

Кстати, это был бы ваш код с французскими ключевыми словами:

Si (i < taille) {
    cas par cas :
        cas 1:
            afficher "salut"
        défaut:
            afficher "non merci"
} sinon {
    afficher "oui, merci"
}

Не то чтобы перевод ключевых слов имел ничего общего с переводом строк. Конечно, на нашем языке есть «привет, там». Европейские кодировщики даже склонны использовать I18N гораздо чаще, чем американские, чтобы их услуги могли охватить более широкую аудиторию.

поэтому было бы неэффективно заставлять их одновременно изучать вычисления И новый язык.

Кстати, это будет ваш код с французскими ключевыми словами:

Si (i < taille) {
    cas par cas :
        cas 1:
            afficher "salut"
        défaut:
            afficher "non merci"
} sinon {
    afficher "oui, merci"
}

Не то чтобы перевод ключевых слов не имел ничего общего с переводом строк . Конечно, на нашем языке есть «привет, там». Европейские кодировщики даже склонны использовать I18N гораздо чаще, чем американские, чтобы их услуги могли охватить более широкую аудиторию.

поэтому было бы неэффективно заставлять их одновременно изучать вычисления И новый язык.

Кстати, это будет ваш код с французскими ключевыми словами:

Si (i < taille) {
    cas par cas :
        cas 1:
            afficher "salut"
        défaut:
            afficher "non merci"
} sinon {
    afficher "oui, merci"
}

Не то чтобы перевод ключевых слов не имел ничего общего с переводом строк . Конечно, на нашем языке есть «привет, там». Европейские кодировщики даже склонны использовать I18N гораздо чаще, чем американские, чтобы их услуги могли охватить более широкую аудиторию.

3
ответ дан 24 November 2019 в 03:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: