我一直思考框架设计该如何简单,如何降低开发者难度,最后想出了相处了一个比较满意的框架设计。
框架大致分为 前端UI -后端API-数据库:
前端UI和后端API通过DTO 模型交互
后端API和数据库通过ORM 模型交互
数据库以及ORM模型之间的关系:
鉴于项目可能复用多个数据库,后端工程师可能需要掌握多种数据库SQL语句以及对应SQL语句优化,加大开发难度。
鉴于SQL语句掌握能力和SQL语句优化能力,我的觉得框架应该使用ORM技术 把 数据表拆解成ORM模型,模型与模型之间无关联。
我们在代码里面获取单表ORM模型,然后组装成前台需要的DTO模型。
这个想法取决于DDD领域聚合思想,为了降低领域开发模式,把每个单表看成聚合根。
这样有一下几个好处:
- 执行效率 前端语言的执行效率,和数据库语言执行效率,都没有后端执行效率高
- 优化难度 前端>数据库>后端
- 问题复杂 问题高度内聚在后端,方便调试以及跟踪
- 开发难度 开发人员只需要掌握对应开发语言,专注代码逻辑和代码优化
前端UI获取的DTO模型和后端API获取的ORM 模型之间的关系:
从数据库获取ORM 模型 可以直接通过Map 直接转为简单DTO模型,然后简单DTO模型通过代码组装成 复杂DTO模型 传输给前端UI,完成DTO模型复用。
这个框架思路 不是为了阿里腾讯构思,只为中小级公司构思,简化问题流程,加快开发。
中级框架分层设计——从数据开始贝恩投资公司、 jpgoodbuy、 福茂、 我是如何把一个店铺的销量玩到拦腰截断的?、 外媒:谷歌YouTube出现大面积宕机,用户无法访问?、 营销新方式GET!Facebook Messenger与跨境电商的有效结合、 云南石卡雪山旅游观光游玩攻略分享给大家、 深圳怎么去香港旅游 深圳到香港旅游怎么走、 台湾旅游行程攻略/北台湾五日深度游行程推荐给大家、
No comments:
Post a Comment