Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:
null
. null
. null
, как если бы это был массив. null
, как если бы это был массив. null
как будто это было значение Throwable. Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null
.
Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html
Я использую то, что использует Платформа, поскольку это - фактическая лучшая практика. Однако, пока код в Вашей компании последовательно использование их стиля, затем Вы - очень более обеспеченное привыкание к нему. Если у каждого разработчика есть их собственный стандарт, то нет никакого стандарта вообще.
Тем примером.NET, которую Вы отправили, была функция. Принятый "стандарт" для методов/функций является Camel-регистром в верхнем регистре (или Паскаль, если Вы хотите назвать его этим).
я придерживаюсь Camel-регистра, где я могу. Это позволяет Вам легко знать различие между переменной и методом.
Кроме того, я - поклонник засовывания подчеркивания перед переменными локального класса. Например: _localVar
.
На самом деле нет никакой "стандартной" конвенции по этому. Существует отредактированная инструкция Microsoft где-нибудь, и как с с любой другой инструкцией по соглашению о присвоении имен, конечно, существует другой опровергающий ее, но здесь - то, что я понял как "стандартная конвенция преобразования регистра C#".
На самом деле, FxCop осуществит несколько из тех правил, но (AFAIK), он игнорирует любое написание Вас, используют для локальных переменных.
Мне нравятся конвенции кодирования, размеченные в спецификация
проекта Aardvark'dПреобразование регистра Паскаля должно использоваться для Свойств. До varible имена идут, некоторые люди используют _, и некоторые poeple используют m_, и некоторые люди просто используют простое преобразование регистра верблюда. Я думаю, что пока Вы один последовательный здесь, это не должно иметь значения.
Я предполагаю, что необходимо выносить то, что стандарт кодирования говорит для места работы, однако очень Вам лично не нравится он. Возможно, однажды в будущем Вы сможете продиктовать свои собственные стандарты кодирования.
Лично мне нравится, когда базы данных используют названия формы "fish_name", "tank_id", и т.д. для таблиц и полей, тогда как код, эквивалентный из модели базы данных, был бы "fishName" и "tankID". Мне также не нравится именование "_fooname", когда "fooName" доступен. Но я должен повторить, что это субъективно, и у различных людей будут различные идеи о том, что хорошо и плохо из-за их предшествующего опыта и образования.
От Руководства Разработчика инфраструктуры.NET Конвенции Капитализации , Чувствительность к регистру:
инструкции по капитализации существуют только для создания идентификаторов легче считать и распознать. Преобразование регистра не может использоваться в качестве средства предотвращения коллизий имени между элементами библиотеки.
не предполагают, что все языки программирования чувствительны к регистру. Они не. Имена не могут отличаться одним только случаем.
Я (и моя команда) предпочитаю резервировать первоначальные капиталы для имен классов.
, Почему? Распространение стандартов Java, я думаю.
Необходимо взглянуть на новый инструмент Microsoft, StyleCop для проверки исходного кода C#. Также следите FxCop для проверки скомпилированных блоков .NET. FxCop фокусируется больше на деталях того, что код делает, не расположение, но он действительно имеет некоторые правила именования связанными с публично видимыми именами.
StyleCop определяет стандарт кодирования, который теперь продвигается Microsoft как промышленный стандарт. Это проверяет исходный код C# по стандарту. StyleCop придерживается Вашего стиля PascalCase.
Получение людей на StyleCop (или любой другой стандарт в этом отношении) может быть трудным, это - настоящее препятствие, и StyleCop является довольно исчерпывающим. Но код должен быть к универсальному стандарту - и персональный стандарт лучше, чем ни один, стандарт компании лучше, чем персональный, и промышленный стандарт является лучшим из всех.
намного легче убедить людей, когда проект запускается - команда формируется и нет никакого существующего кода для преобразования. И можно поместить инструменты (FxCop, StyleCop) на месте для повреждения сборки, если код не соответствует стандартам.
необходимо использовать стандарт для языка и платформы - код SQL должен использовать стандарты SQL, и код C# должен использовать стандарты C#.
Для открытых интерфейсов необходимо придерживаться руководства по проектированию платформы.NET MS: " Конвенции Капитализации ".
Для неподвергнутых участников затем независимо от того, что Вы и Ваши коллеги можете договориться.
Ссылка на чиновника руководство по проектированию могла бы помочь. А именно, считайте раздел по стили Капитализации .
В главной схеме вещей, Паскаль по сравнению с Camel не имеет значения так очень, и Вы вряд ли убедите любого возвращаться по существующей кодовой базе только для изменения случая имен. То, что действительно важно, - то, что Вы хотите быть последовательными в данной кодовой базе.
я просто счастлив, пока Вы не используете венгерский язык.