一个班级里面的很多班级

时间:2013-12-05 14:07:12

标签: c# design-patterns

我使用的语言是C#。

我有建筑性问题。让A类具有以下形式:

Class A
{
    Class B
    {
        // properties goes here.
    }

    Class C
    {
       // properties goes here.
    }

    Class D
    {
        // properties goes here.
    }

   ....

   private ClassA methodX
   {
       // code goes here
   }  

   private ClassB methodY
   {
       // code goes here
   }

   private ClassC methodZ
   {
       // code goes here
   }

   ....
}

B,C和D类是仅包含属性的类。他们不通过公共方法表达任何行为。我对这种方法的问题是A类的代码太大了。因此,A级的未来维护将很困难。

我的问题是我应该删除B,C和D类来分隔文件,还是应该将它们留在A类中?

有没有更好的方法来处理上述问题?

我担心的一个问题是,如果我将此代码放在单独的文件中,那么我还有其他类,例如class A。因此,我的应用程序所拥有的文件数量会显着增加。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

如果你将它们从A类移到自己的文件中并使它们成为内部类,这将实现将它们保密(相对于其他程序集)并使你的类保持更易于管理的大小。

根据经验,只要您的类名称很好并且文件被组织到具有匹配名称空间的子文件夹中,就会有大量文件存在问题。