Преобразование регистра Паскаля или Camel, Случающийся для кода C#?

Исключение нулевого указателя генерируется, когда приложение пытается использовать 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

32
задан Peter Mortensen 3 February 2010 в 21:13
поделиться

11 ответов

Я использую то, что использует Платформа, поскольку это - фактическая лучшая практика. Однако, пока код в Вашей компании последовательно использование их стиля, затем Вы - очень более обеспеченное привыкание к нему. Если у каждого разработчика есть их собственный стандарт, то нет никакого стандарта вообще.

33
ответ дан 27 November 2019 в 19:58
поделиться

Тем примером.NET, которую Вы отправили, была функция. Принятый "стандарт" для методов/функций является Camel-регистром в верхнем регистре (или Паскаль, если Вы хотите назвать его этим).

я придерживаюсь Camel-регистра, где я могу. Это позволяет Вам легко знать различие между переменной и методом.

Кроме того, я - поклонник засовывания подчеркивания перед переменными локального класса. Например: _localVar.

0
ответ дан 27 November 2019 в 19:58
поделиться

На самом деле нет никакой "стандартной" конвенции по этому. Существует отредактированная инструкция Microsoft где-нибудь, и как с с любой другой инструкцией по соглашению о присвоении имен, конечно, существует другой опровергающий ее, но здесь - то, что я понял как "стандартная конвенция преобразования регистра C#".

  1. PerWordCaps в именах типов (классы, перечисления), константы и свойства.
  2. Camel-регистр для действительно долгих локальных переменных и защищенный/частные переменные
  3. Никакой ALL_CAPS когда-либо (хорошо, только в компиляторе определяет, но не в Вашем коде)
  4. кажется, что часть системного использования классов подчеркнула имена (_name) для частных переменных, но я предполагаю, что это происходит из среды исходного писателя, поскольку большинство из них произошло прямо из C++. Кроме того, заметьте, что VB.NET не чувствителен к регистру, таким образом, Вы не смогли бы получить доступ к защищенным переменным при расширении класса.

На самом деле, FxCop осуществит несколько из тех правил, но (AFAIK), он игнорирует любое написание Вас, используют для локальных переменных.

0
ответ дан 27 November 2019 в 19:58
поделиться

Мне нравятся конвенции кодирования, размеченные в спецификация

проекта Aardvark'd
0
ответ дан 27 November 2019 в 19:58
поделиться

Преобразование регистра Паскаля должно использоваться для Свойств. До varible имена идут, некоторые люди используют _, и некоторые poeple используют m_, и некоторые люди просто используют простое преобразование регистра верблюда. Я думаю, что пока Вы один последовательный здесь, это не должно иметь значения.

0
ответ дан 27 November 2019 в 19:58
поделиться

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

Лично мне нравится, когда базы данных используют названия формы "fish_name", "tank_id", и т.д. для таблиц и полей, тогда как код, эквивалентный из модели базы данных, был бы "fishName" и "tankID". Мне также не нравится именование "_fooname", когда "fooName" доступен. Но я должен повторить, что это субъективно, и у различных людей будут различные идеи о том, что хорошо и плохо из-за их предшествующего опыта и образования.

0
ответ дан 27 November 2019 в 19:58
поделиться

От Руководства Разработчика инфраструктуры.NET Конвенции Капитализации , Чувствительность к регистру:

инструкции по капитализации существуют только для создания идентификаторов легче считать и распознать. Преобразование регистра не может использоваться в качестве средства предотвращения коллизий имени между элементами библиотеки.

не предполагают, что все языки программирования чувствительны к регистру. Они не. Имена не могут отличаться одним только случаем.

1
ответ дан 27 November 2019 в 19:58
поделиться

Я (и моя команда) предпочитаю резервировать первоначальные капиталы для имен классов.

, Почему? Распространение стандартов Java, я думаю.

3
ответ дан 27 November 2019 в 19:58
поделиться

Необходимо взглянуть на новый инструмент Microsoft, StyleCop для проверки исходного кода C#. Также следите FxCop для проверки скомпилированных блоков .NET. FxCop фокусируется больше на деталях того, что код делает, не расположение, но он действительно имеет некоторые правила именования связанными с публично видимыми именами.

StyleCop определяет стандарт кодирования, который теперь продвигается Microsoft как промышленный стандарт. Это проверяет исходный код C# по стандарту. StyleCop придерживается Вашего стиля PascalCase.

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

намного легче убедить людей, когда проект запускается - команда формируется и нет никакого существующего кода для преобразования. И можно поместить инструменты (FxCop, StyleCop) на месте для повреждения сборки, если код не соответствует стандартам.

необходимо использовать стандарт для языка и платформы - код SQL должен использовать стандарты SQL, и код C# должен использовать стандарты C#.

16
ответ дан 27 November 2019 в 19:58
поделиться

Для открытых интерфейсов необходимо придерживаться руководства по проектированию платформы.NET MS: " Конвенции Капитализации ".

Для неподвергнутых участников затем независимо от того, что Вы и Ваши коллеги можете договориться.

7
ответ дан 27 November 2019 в 19:58
поделиться

Ссылка на чиновника руководство по проектированию могла бы помочь. А именно, считайте раздел по стили Капитализации .

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

я просто счастлив, пока Вы не используете венгерский язык.

37
ответ дан 27 November 2019 в 19:58
поделиться
Другие вопросы по тегам:

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