三层架构
三层架构一般包含:控制层,业务逻辑层,数据访问层。
从历史角度考虑优缺点
单一应用结构
优势
- 结构简单
- 性能高
劣势
- 业务杂糅。代码杂糅的不同的业务,要求开发人员能理解所有的细节,维护费时间。
面临什么问题?
- 当处理的业务越来越多时?
- 代码变得庞杂,需要重构。
- 当需要有共同的业务处理的任务时,需要抽取公共类。
- 如不重构,会出现很多重复的代码段。改动一个地方,很多地方相同的代码都需要改动,既提升了产生bug的风险,又让修改时间变长,对开发人员细心程度高。
- 当代码中需要添加日志,事务,权限控制,数据监控,会增加诸多重复的、相似的代码块
- 当参与的人员越来越多时,不同的风格代码结构会造成理解上的困难。
改进
- 提取公共类
- 抽取公共的模型类
- 抽取帮助类或者utils类
- 大类变小类
- 大的业务处理的类,根据业务聚焦的不同,划分成几个业务处理类
- 使用组合和继承(设计模式)的方式,让结构具有可扩展性&