一、Overview
Spring makes it easy to create java enterprise applications.It provides everything you need to embrace the java language in an enterprise enviroment,with support for Groovy and Kotlin as alternative languages on the JVM,and with the flexibility to create many kinds of architectures depending on an application’s needs.As of Spring framework 5,spring requires JDK8+ and provides out-of-the-box support for JDK 11 LTS.
Spring使创建java企业级应用更加简单,它提供了你在企业级环境java语言中所需的一切,支持Groovy和Kotlin作为替代语言在JVM上,并且能够根据应用程序的需要灵活的创建多种架构,在spring5中,spring需要JDK8以上,并且为JDK11 LTS 提供了开箱即用的支持。
Spring supports a wide range of application scenarios.In a large enterprise,application often exist for a long time and have to run on a JDK and application Server whose upgrade cycle is beyond developer control.Others may run as a single jar with the server embeded,possibly in a cloud enviroment.Yet others may be standalone applications(such as batch or intergration workloads) that do not need a server.
spring支持广泛的应用场景,在大型企业中,应用程序通常存在很长时间,并且运行在升级周期超过开发人员控制的JDK和应用程序服务器上,其余的可能作为一个jar运行在内嵌服务器中,可能在云环境中,还有一些可能是不需要服务器的单体应用(列如批处理和集成工作负载)。
Spring is open source.It has a large and active community that provides continuous feedback based on a diverse range of real-world use cases.This has helped Spring to successfully evolve over a very long time.
Spring是开源的,它拥有一个庞大和活跃的社区,基于各种各样的实际案列提供持续的反馈,帮助spring成功的在很长一段时间内成功的进步发展。
二、Design Philosophy
When you learn about a framework,it’s important to know not only what it does but what priciples it follows.Here are the guiding principles of the Spring Framework ;
-
Provide choice at every level.Spring lets you defer design decisions as late as possible.FOr example,you can switch persistence providers through configuration your code.The same is true for many other infrastructure concerns and integration with third-party APIs.
-
Accommodate diverse perspectives.Spring embraces flexibility and is not opinonated about things should be done.It supports a wide range of application needs with different perspectives.
-
Maintain strong backward compatibility.Spring’s evolution has been carefully managed to force few breaking changes between versions.Spring supports a carefully chosen range of JDK versions and third-party libraries to facilitate maintenance of applications and libraries that depend on spring.
-
Care about API design.The Spring team puts a lot of thought and time into making APIs that are intutive and that hold up across many versions and many years.
-
Set high standards for code quality.The Spring framework puts a strong emphasis on meaningful,current ,and accurate javadoc.It is one of very few projects that can claim clean code structure with no circular dependencies bwtween packages.
-
提供各个级别的选择。Spring让你尽可能晚的推迟设计决定,列如,你可以通过配置你的代码切换持久层框架,其他许多基础框架和第三方API也是如此。
-
容纳各种观点,spring拥抱灵活性并且对应该如何做好事情不是固执的,它基于不同的观点提供广泛的应用需求。
-
维持有力的向后兼容能力,spring的演变已经被小心管理,以确保版本之间尽可能少的存在重大改变。Spring 支持精心挑选的一系列 JDK 版本和第三方库,以方便维护依赖 Spring 的应用程序和库。
-
关心API设计,spring团队投入大量思考和时间,使API直观和可以跨越多个版本和年代。
-
为代码质量设定高标准。Spring Framework 非常强调有意义、最新和准确的 javadoc。它是极少数可以声称代码结构清晰且包之间没有循环依赖关系的项目之一。
1、upgrade cycle 升级周期
2、yet others 还有一些
3、over a very long time 在很长一段时间内
4、accommodate 容纳、和解、迁就
5、perspective 观点、远景
6、opinonated 固执的
7、intutive 直觉的、直接的
8、hold up 承受、耽误、拦截
9、emphasis 重点、重要