|
|
1
1
我倾向于采用垂直分割的一层/层,一旦代码库开始增长,我就会考虑水平分割,通常是围绕特定的业务功能块。例如,如果我的持久层正在与>20个左右的表,我希望将其拆分,知道在哪里拆分有点像是一门黑色艺术,它是高度领域和项目特定的。 我使用的经验法则是,我可能会在其他地方重复使用哪一组合理的类。在我自己的代码库中刚刚经历了这个过程,有趣的是,有多少其他的东西变得很清楚,可以重新分解为基类、抽象类或接口类,然后它们又被推到一个较低级别的泛型程序集中。 |
|
|
2
1
对我来说,我将一些代码隔离到dll中的主要原因是:
如果你需要这些东西,你应该考虑制作DLL。 不利的一面是,您需要解决一些棘手的周期性依赖关系(通常使用回调完成) |
|
|
3
1
每层一个,一个用于任何“自上而下”应用程序特定的东西(比如模型),一个用于“通用工具”,对我来说似乎是合理的。在层之间拆分的一个好处是
我见过各种各样的应用程序 太多的项目-它很快就会变得笨拙,特别是当您使用单元测试将项目加倍时。 |