首先,分层思想是什么?Model层主要是一些什么内容?
是实体抽象类?
可不可以放一些实现一些功能的类?
如果放了,有没有违背分层思想?

解决方案 »

  1.   

    分层的思想是 减少耦合 ,以控制系统在发生变更时的影响范围
    Model里主要放的是实体类,经常与数据库中的表对应,但不是必须如此
    可以放实现一些功能的类,但是要看情况,比如你有一个 AAA 表,则建立了和表对应的 AAA 实体类,但是由于这个实体经常需要有复制操作而对其实现一下 原型模式,通过建立一个局部类并实现IClonable接口可以简单完成,此时没有理由把局部类放到另外一层中去。但是除非你明白你做的是什么,在不确定的情况下最好还是不要再Model层中写功能代码,否则会引起一些不必要的维护麻烦(通常因为该层的代码是由某种工具自动生成的)分层的思想只是为了减少耦合,只要不违背这点就OK, 不必要为了分而分,最后都不知道为什么分了。