Вот ваши примеры кода, какими они были бы, если бы они следовали официальным рекомендациям по стилю кода Microsoft (обеспечивается StyleCop и FxCop)
public void MyMethod()
{
}
public string MyProperty { get; set; }
private void MyMethod()
{
}
public void MyMethod()
{
string myVariable = null;
}
public class Test
{
private string bob;
public Test()
{
this.bob = null;
}
}
Некоторые основные характеристики из спецификации: все поля должны быть private
и строчными (кроме случаев, когда они постоянны). Все методы должны быть заглавными, независимо от доступа. Если вы хотите выставить поле (то есть сделать его public
или protected
), используйте свойство (которое должно быть написано заглавными буквами, если оно защищено или является общедоступным). Если у вас есть автоматические уровни get
и set
для свойств (то есть просто get;
и set;
), они могут быть в одной строке, в противном случае - в отдельных строках (если кода больше). Всегда называйте поля, начинающиеся со строчной буквы a-z, а не подчеркивания. Брекеты должны быть на новой линии. Всегда указывайте нестатические члены (то есть свойства, методы, поля) с this.
, чтобы отличать их от переменных и избежать неоднозначности.
Там огромный список, но они наиболее актуальны для ваших примеров. Посмотрите на code.msdn.microsoft.com / sourceanalysis
И то, что вы называете «глобальным» в своем вопросе, на самом деле является «полем». Они никогда не должны быть выставлены (как я уже говорил выше), потому что вы выставляете свою реализацию, когда на самом деле ваше поведение - это все, что вы должны выставлять на интерфейсе типу. Свойства позволяют вам указать интерфейс, и, даже если они теперь реализованы как автоматические свойства, вы можете изменить уровни get
и set
позже, не меняя интерфейс.