关于分层框架
分层架构的由来
以Web开发为例子。
一开始,人们把前端代码+数据库操作+逻辑都写在一个文件中。
但是后来发现这样容易乱,于是开始分层。
主要有两种思想:
1是,页面只负责显示,后端负责逻辑。
2是,数据库操作,逻辑分离。
前者靠MVC实现。
后者靠三层实现。
单纯的MVC
在mvc中,
Controller负责接收view的参数;
调用Model处理;
然后讲结果返回给View。
Controller是前后联系的中介。
所谓的分离,其实就是把C当作统一的前后联系的中介。
把C的文件删掉,就算是真的分了。
---------------------------------------------------------------------------------
可以看出单纯用MVC的话,
Model一定是充血模型,
也就是既包含数据,
又包含对数据的操作。
因为C只是前后联系的中介。
再加上三层
这个时候,后端可以继续分出三层来了。
也就是将充血实体类,进一步拆成贫血实体类+BLL+DAL。
三层里的UI层实际就是mvc中的V和C。
最后
MVC+三层分好以后,我们发现程序被分成了:
贫血实体+DAL+BLL+Controllers+Views
这样5个部分。
我觉得:分层更多的是为了分工合作,代码规范。