2010-07-21 2 views
1

Расширение VSS для упрощения работы VS предлагает мне использовать PascalCase в собственности ниже.Вопрос для новобрачных о PascalCase

public Color Color { get; private set; } 

Здесь Цвет - тип Enum. Я бы никогда не подумал, что это возможно, потому что это одно и то же имя с типом. Но это действительно так. Это что-то предлагается по общим правилам? Должен ли я всегда слушать ReSharper? Было бы полезно получить хорошие ссылки для PascalCase.

+1

Существует Руководящий документ Microsoft Framework Дизайн, который говорит что-то вдоль линии, _ «Рассмотрим давая свойство такое же имя, как его тип.» _ Так что да, это рекомендуется (не для каждого свойства, но там, где это имеет смысл). – stakx

+0

Обратите внимание, что это дубликат http://stackoverflow.com/questions/1095644/giving-a-property-the-same-name-as-its-class и http://stackoverflow.com/questions/1746117/ почему-это-возможно-чтобы-иметь-свойства-named-the-same-as-their-return-types/1746372 # 1746372 –

ответ

6

На самом деле это называется проблемой цвета цвета и объясняется здесь;

http://blogs.msdn.com/b/ericlippert/archive/2009/07/06/color-color.aspx

И да, он должен работать и следует именование, как правило, согласованным правилам именования конвенции. Я оставил бы его, пока вы показываете его в своем примере.

+0

На самом деле этот код мог * ввести * проблему Color Color, но само свойство отлично, потому что синтаксис свойств всегда является «accessmodifier (s) type Name» – Powerlord

+0

. Я шокирован тем, что с моим spesific вопросом существует такая же проблема с именами. – Freshblood

+0

@R. Bemrose: Да, я, вероятно, мог бы сказать это лучше, но я думаю, что OP получает то, во что я ехал. –

0

Да, это рекомендуется. Я предлагаю вам следовать рекомендациям ReSharper, особенно если вы новичок в программировании.

Статья в Википедии о CamelCase содержит полезную информацию.

0

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

0

http://msdn.microsoft.com/en-us/library/ms229043.aspx

Следующие руководящие принципы обеспечивают общие правила для идентификаторов.

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

Слушайте ReSharper;)

+0

Слушайте ReSharper за этот просторный вопрос или за все? – Freshblood

+0

Только для этого конкретного вопроса. Мне не хватает опыта ReSharper, но похоже, что он всегда прав. –

+1

Вы не должны слепо слушать что-либо, и это выходит за рамки программирования. OP хотел узнать «почему» за предложением, что хорошо. –

Смежные вопросы