Spring技术发展及框架设计

一、Spring Framework

版本流程:SNAPSHOT -> RC(PRE) -> RELEASE(GA) -> CURRENT

常用的经典稳定版本:2.5.6、3.3.1、4.X等。

二、Spring框架设计

你理解的框架是什么?

框架是基于一组类库或工具,在特定领域里根据一定的规则组合成的、开放性的骨架。

框架具有如下特性:

  1. 支撑性+拓展性:框架不解决具体的业务功能问题,我们可以在框架的基础上添加各种具体的有任务功能,定制特性,从而形成具体的业务应用系统。
  2. 聚合性+约束性:框架是多种技术点的按照一定规则的聚合体。我们采用了某种框架也就意味着做出了技术选型的取舍。在很多中可能的技术组合里确定了一种具体的实现方式,后续的其他工作都会从这些技术出发,也需要遵循这些规则,所以框架本身影响到研发过程里的方方面面。

脚手架:框架+通用的业务功能方法

补充(技术、不同软件形态的发展):

  1. 从0开始编写代码,积累了好多可以复用的方法,跟业务没有关系的。我们把这些共通提出来,变成小的工具类,工具类慢慢积累多了,就形成了一个类库
  2. 采用一些通用的项目的底座,比如说SSH,搭起来一个框架。他可以做成abcd多个系统都可以用,就有了一个整合的框架
  3. 比如说做的业务就是偏CRM领域的,CRM里可能有几十上百个大的功能模块,甚至有很多歌子系统,但是每个子系统里面都需要一些特殊的功能需求。比如说用户的管理、权限这些东西。我们把这些东西作为一个通用的业务模块整合到我们的框架里来,我们现在就有了一个脚手架。这个脚手架就可以很好的支撑我们的CRM类这一个小的方向领域内多种不同的项目或者子项目的开发。
  4. 当我们针对比如说互联网电商领域内,这样的一些CRM系统,我们把常用的各种功能需求、功能模块、营销、会员管理等等都放进去,标准化了,然后勾选几个参数,不同的电商公司都可以拿去用,当做他自己公司的业务的CRM来用。这时候其实就做了一个CRM的产品
  5. 当这个产品越来越成熟,里面稍微可以定制一下,给其他的一些领域用。给整个电商的其他业务用。相当于拥有了一个比较大的平台
  6. 随着产品卖的越来越多,每家产品我们都需要去上门给他安装维护,出了问题要给他解决问题。我们就可以把这套系统做成是多租户的放在云端部署。让每家直接通过浏览器接入进来。给他开通账户权限,给他使用。这时候就形成了SaaS。变成了

三、Spring Framework 核心6大模块

六大模块:

六大模块相互之间的层次结构:

引入Spring意味着引入了一种研发协作模式:

用不用,对研发、协作有什么影响?

水平分层:展示层、业务层、服务层、持久化层、数据库层

  • 每一层都可以单独去做
  • 层和层之间的对象相互的引用关系,都是由Spring通过注解和配置的方式去解决,在代码里不需要体现

垂直分层:按功能分成很多竖着切的模块(用户模块、订单模块、商品模块)

拆分成很多个小粒度。减小相互之间的依赖

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值