The history and design philosophy of Spring

簡介

Spring框架是 Java 平臺的一個開源的全棧(Full-stack)應用程序框架控制反轉容器實現,通常被直接稱爲 Spring。該框架的一些核心功能理論上可用於任何 Java 應用,但 Spring 還爲基於Java企業版平臺構建的 Web 應用提供了大量的拓展支持。雖然 Spring 沒有直接實現任何的編程模型,但它已經在 Java 社區中廣爲流行,基本上徹底代替了企業級JavaBeans(EJB)模型。java

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。 ip

  • 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。它是極少數項目之一,能夠聲稱乾淨的代碼結構,包之間沒有循環依賴。

相關文章
相關標籤/搜索