设计讨论:设计什么样的框架?

简介:

今天跟同事们聊到要给我们的系统设计一套框架。我问他想要个做什么的框架,他给了我一张图:

wKioL1hK3cSy9BxoAAANSWYFYWI806.png-wh_50


我第一感觉是:这不就是SpringMvc的Dispatch Servlet么?第二感觉是:这位同志哥好像没想清楚自己想要什么样的框架。


好的框架至少要有两个功能。

第一个功能是减少重复工作、提高开发效率。例如SpringMvc/Struts,减少了Http的重复操作;Hibernate/MyBatis,减少了JDBC操作;另外公司有些业务框架会将重复的业务功能放到框架中。这都起到了提高开发效率的作用。

第二个功能抽取、规范业务逻辑。我在公司写过账务功能的、审批功能的、任务分派的业务框架,基本都是这一类型。这类框架与其称为业务框架,不如称为业务模型。它有助于理解产品和业务逻辑,也便于维护现有功能和扩展新功能。

不过,严格的业务模型与系统优化之间往往是有冲突的。这个带过。


从提高开发效率的角度来讲,那位同志哥的框架要做的事情,基本上SpringMvc已经替我们做了。

从规范业务逻辑的角度来说,这个框架可以承担一部分责任。但是,不同的业务之间千差万别,要把它们全部装进一套处理逻辑里,有点挑战。




本文转自 斯然在天边 51CTO博客,原文链接:http://blog.51cto.com/winters1224/1881389,如需转载请自行联系原作者

相关文章
|
数据可视化 数据处理
结构化分析与设计
一、结构化分析与设计 结构化分析与设计(Structured Analysis and Design,简称SAD)是一种软件开发方法论,旨在通过分析和设计来构建高质量的软件系统。 结构化分析与设计的主要特点包括以下几点: 1. 结构化分析:结构化分析是通过对系统需求进行分析,将系统分解为若干个功能模块,并定义它们之间的关系和交互。在结构化分析中,常用的工具和技术包括数据流图(Data Flow Diagram,简称DFD)、数据字典(Data Dictionary)和实体关系图(Entity-Relationship Diagram,简称ERD)等。 2. 结构化设计:结构化设计是在结构化分析
664 2
|
XML 存储 安全
深入理解HttpSecurity的设计
介绍了基于配置文件的使用方式以及实现细节,如下:
104 0
|
6月前
|
设计模式 监控 算法
【领域驱动设计专题】一文带领你透视DDD领域驱动模型的本质和设计原理分析指南(通用语言体系)
【领域驱动设计专题】一文带领你透视DDD领域驱动模型的本质和设计原理分析指南(通用语言体系)
147 2
|
6月前
|
敏捷开发 架构师 Java
【领域驱动设计专题】一文带领你透视DDD领域驱动模型的本质和设计原理分析指南(基本概念篇)
【领域驱动设计专题】一文带领你透视DDD领域驱动模型的本质和设计原理分析指南(基本概念篇)
172 0
|
6月前
|
敏捷开发 监控 架构师
【领域驱动设计专题】一文带领你透视DDD领域驱动模型的本质和设计原理分析指南(构建领域知识)
【领域驱动设计专题】一文带领你透视DDD领域驱动模型的本质和设计原理分析指南(构建领域知识)
186 0
调查表设计
调查表设计
86 0
|
数据可视化
【设计篇】36 # 如何理解可视化设计原则?
【设计篇】36 # 如何理解可视化设计原则?
239 0
【设计篇】36 # 如何理解可视化设计原则?
|
缓存 Java 数据库
详细设计-设计讨论|学习笔记
快速学习详细设计-设计讨论
115 0
|
存储 Java 网络性能优化
分布式设计要点 | 学习笔记
快速学习分布式设计要点
|
安全 NoSQL JavaScript
C/C++为什么要专门设计个do…while?
最初do ... while的出现,更多的是作为循环控制流的一种语法糖。因为不论是while 还是 for循环,都是要先判断是否满足进入循环体的条件的。满足条件之后才能进入循环去执行循环体内的操作。
187 0
C/C++为什么要专门设计个do…while?