именование папок во вложенных классах - PullRequest
0 голосов
/ 01 апреля 2011

Если у нас следующая ситуация:

namespace SomeNameSpace
{
    public class Class1
    {
        private class NestedClass1 
        {
            // NestedClass1 implementation
        }

        private class NestedClass2 
        {
            // NestedClass1 implementation
        }
    }

    public class Class2
    {
        // so on ...
    }
}

Каков наилучший способ организации папок и файлов для вложенных классов?

Прежде всего, у нас есть папка "SomeNameSpace".Затем файлы «Class1.cs, Class2.cs, ...».

Рассмотрим вложенные классы в «Class1».Это правильный способ создать файлы "Class1.NestedClass1.cs, ..." и поместить их в папку SomeNameSpace?

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

Ответы [ 2 ]

0 голосов
/ 01 апреля 2011

Учитывая ваш пример, лично я бы назвал их соответственно:

  • Class1.cs
  • Class1.NestedClass1.cs
  • Class1.NestedClass2.cs
  • Class2.cs
0 голосов
/ 01 апреля 2011

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

Я склонен создавать отдельные файлы, такие как Class.Subclass.cs, если у меня более одного вложенного классаодин вложенный класс, который загромождает код своего родительского класса.В этом случае, конечно, класс должен быть объявлен частичным.

Тем не менее, это только мое личное мнение, делайте это так, как вам / вашей команде нравится больше всего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...