SpringBoot的设计理念和目标、整体架构你有深入了解吗
源代码阅读工具【SpringBoot的设计理念和目标、整体架构你有深入了解吗】读者可根据日常习惯 , 选择熟悉的代码阅读 I 具 , 比如 Intellij IDEA、Spring Tool Suite、Eclipse、 MyEclipse 等 。
阅读 Spring Boot 源代码之前 , 我们还需搭建基础阅读环境 。 Spring Boot 对 JDK 和构建工具有一定的要求 ,比如 JDK 8+、Maven 3.3+、Gradle 5.x+等环境 , 满足相应需求即可 。
为了达到更好的学习效果 , 建议大家使用实例+debug 的模式来进行学习 。 因此 , 源代码阅读 I 具最好支持实例的编写、运行、调试等功能 。
本文使用 Itellj IDEA (简称 IDEA) 作为阅读代码工具 , 采用纯源代码阅读、实例+debug 两种模式配合进行学习 。
其中纯源代码阅读模式可以帮助我们更好地进行代码的注释、编写、单元测试等操作 , 而实例+debug 模式可以让我们更好地理解整个项目的运行流程及功能的具体使用 。 图 1-2 和图1-3 展示 了通过 IDEA 阅读代码的两种模式 。
文章插图
文章插图
Spring Boot 的设计理念和目标我们知道 , Spring 所拥有的强大功能之一就是可以集成各种开源软件 。但随着互联网的高速发展 , 各种框架层出不穷 , 这就对系统架构的灵活性、扩展性、可伸缩性、高可用性都提出了新的要求 。 随着项目的发展 , Spring 慢慢地集成了更多的开源软件 , 引入大量配置文件 , 这会导致程序出错率高、运行效率低下的问题 。 为了解决这些状况 , Spring Boot 应运而生 。
Spring Boot 本身并不提供 Spring 的核心功能 , 而是作为 Spring 的脚手架框架 , 以达到快速构建项目、预置三方配置、开箱即用的目的 。
文章插图
设计理念
约定优于配置(Convention Over Configuration) , 又称为按约定编程,是一种软件设计范式 , 旨在减少软件开发人员需要做决定的数量 , 执行起来简单而又不失灵活 。 Spring Boot 的核心设计完美遵从了此范式 。
Spring Boot 的功能从细节到整体都是基于“约定优于配置开发的 , 从基础框架的搭建、配置文件、中间件的集成、内置容器以及其生态中各种 Starters,无不遵从此设计范式 。 Starter
作为 Spring Boot 的核心功能之一 , 基于自动配置代码提供了自动配置模块及依赖 , 让软件集成变得简单、易用 。 与此同时 , Spring Boot 也在鼓励各方软件组织创建自己的 Starter 。
设计目标
说到 Spring Boot 的设计目标 , 值得一提的是 Spring Boot 的研发团队一 Pivotal 公司 。 Pivotal公司的企业目 标是致力于改变世界构造软件的方式(Weare transforming how the worldbuilds software)” 。Pivotal 公 司向企业客户提供云原生应用开发 PaaS 平台及服务 , 采用敏捷软件开发方法论帮助企业客户开发软件 , 从而提高软件开发人员工作效率、减少软件运维成本 , 实现企业数字化转型、IT 创新 , 帮助企业客户最终实现业务创新 。
Spring Boot 框架的设计理念完美遵从了它所属企业的目标 。 Spring Boot 不是为已解决的问题提供新的解决方案 , 而是为平台和开发者带来一种全新的体验:整合成熟技术框架、屏蔽系统复杂性、简化已有技术的使用 , 从而降低软件的使用]槛 , 提升软件开发和运维的效率 。
Spring Boot 的整体架构在 1.2 节中已经对 Spring Boot 的核心项目结构及功能做了相应的介绍 , 本节我们从架构层面 了 解 一 下 Spring Boot 的 不同模 块之间的依 赖 关 系 如 图 1-4 所示。
- Apple Glass正进入第二开发阶段 目标成品重量轻 续航长
- 索尼发布两款Crystal LED显示器 目标数字生产领域
- 李炳忠自我打脸,去年realme销量翻番的目标远未实现
- 库克靠打工实现1个亿“小目标”iPhone 12全球热销功不可没
- realme 2021年小目标:国内销量突破千万级 鲤跃龙门
- 英国|英媒:2025年英国很可能无法实现宽带和5G目标
- 惨重代价!这个国家禁用华为之后,5G建设目标恐很难完成
- 欧阳明高:去碳化是下一步新能源汽车的发展目标
- 微软总裁示警SolarWinds黑客攻击 确定40多个新受害目标
- 华为鸿蒙系统明年目标覆盖1亿台以上设备
