The history and design philosophy of Spring

简介

Spring框架是 Java 平台的一个开源的全栈(Full-stack)应用程序框架控制反转容器实现,一般被直接称为 Spring。该框架的一些核心功能理论上可用于任何 Java 应用,但 Spring 还为基于Java企业版平台构建的 Web 应用提供了大量的拓展支持。虽然 Spring 没有直接实现任何的编程模型,但它已经在 Java 社区中广为流行,基本上完全代替了企业级JavaBeans(EJB)模型。

Spring框架以 Apache License 2.0 开源许可协议的形式发布,该框架最初由 Rod Johnson 以及 Juergen Hoeller 等人开发。

Spring Framework已经成长为控制容器的反转,并且目前包括几个提供各种服务的模块,如面向方面的编程,数据访问,事务管理,模型 - 视图 - 控制器,身份验证和授权,消息传递,和测试。

Spring提供自动装配功能,通过它您可以简单地指定接口类型,Spring可以在运行时找到实际类型,前提是没有冲突。

Spring框架历史

  • Spring框架的第一个版本是由Rod Johnson和2002年的一本书编写的。 

  • 该框架于2003年6月首次在Apache许可版本2.0下发布。 

  • Spring框架(1.0)的第一个里程碑版本于2004年3月发布。 

  • 2006年发布的Spring 2.0简化了XML配置文件。

  • 2007年推出的Spring 2.5引入了注释配置。

  • Spring 3.2于2012年推出,引入了Java配置,支持Java 7,Hibernate 4,Servlet 3.0,并且还需要最低限度的Java 1.5。 

  • 2014年发布的Spring 4.0支持Java 8。 

  • Spring Boot也于2014年推出。

  • Spring 5.0于2017年问世.Spring Boot 2.x支持Spring 5。

Design Philosophy

提供各个层面的选择。Spring允许您尽可能晚地推迟设计决策。例如,您可以通过配置切换持久性提供程序,而无需更改代码。许多其他基础架构问题以及与第三方API的集成也是如此。

适应不同的观点。Spring拥抱灵活性,并不认为应该如何做。它以不同的视角支持广泛的应用需求。

保持强大的向后兼容性。Spring的演变经过精心设计,可以在版本之间进行一些重大改变。Spring支持精心挑选的JDK版本和第三方库,以便于维护依赖于Spring的应用程序和库。

关心API设计。Spring团队花了很多心思和时间来制作直观的API,这些API在很多版本和多年中都有用。

为代码质量设定高标准。Spring Framework非常强调有意义的,最新的和准确的javadoc。它是极少数项目之一,可以声称干净的代码结构,包之间没有循环依赖。

猜你喜欢

转载自www.cnblogs.com/sece/p/10901935.html