要点
基本框架图框架的使用框架的优缺点总结UI(User Interface layer:表现层): 主要是指用户交互的界面。用于接收用户输入的数据和显示处理后用户需要的数据。
BLL:(Business Logic Layer:业务逻辑层): UI层和DAL层之间的桥梁。实现业务逻辑。业务逻辑具体包含:验证、计算、业务规则等等。
DAL:(Data access layer:数据访问层): 与数据库进行交互,主要实现对数据的增、删、改、查。将存储在数据库中的数据提交给业务层,同时将业务层处理的数据保存到数据库。(当然这些操作都是基于UI层的。用户的需求反映给界面(UI),UI反映给BLL,BLL反映给DAL,DAL进行数据的操作,操作后再一一返回,直到将用户所需数据反馈给用户)
2.1、建议的编码顺序: Model层 –>数据访问层 –>业务逻辑层–>表现层 对于COMMON层,则是用到的才写
2.2、架构的使用规则
层之间尽量以实体类形式传送参数,不要以变量形式传送。对于每一个数据库表(Table)都在DAL层有一个类与之对应。对于每一个数据库(DataBase)都有一个DAL与之对应。设计应该尽量减少各层数据的传递。2.3、架构的注意事项
应遵循上层调用下层, 不能跨层调用或者循环调用。层与层之间数据传送尽量使用实体类,列表数据除外。优点:
降低维护成本,方便管理。更加易于后期维护, 程序的可扩展性很强。减少数据库差异带来的麻烦,DAL层中使用抽象工厂模式+反射+配置文件使得更换数据库变的简单。即使数据库变成了设计时没有考虑在内的情况,只需重新写DAL和DBHelper。适合大型项目以及合作开发,各层相互独立,每个小组只需专注自己所负责那个模块即可。安全性更强,三层架构使得界面,业务逻辑,数据访问相互独立。可以在各层之间加密传输数据。业务逻辑层和数据库访问层可以部署在不同的服务器上,甚至业务逻辑也可以分别部署在不同的服务器上。这样加上服务器的防火墙使得系统更加安全。* 缺点:*
执行速度会下降,由于分层,数据的传输由原来的直接读取变成通过中间层读取,时间开销是不可忽视的。代码量会增大。