《Techporters架构搭建》-脚手架

脚手架是什么

脚手架是一种基础设施工具,用于快速生成项目的框架代码和文件结构。它是一种标准化的开发工具,使开发人员能够在项目的早期阶段快速搭建出一个具备基本功能和结构的系统。

脚手架的意义

复用原则(Reuse Principle)
现在我们推崇的是极致化的编程体验,缩短的开发时间、大量的开发任务、支持需求的变更、高频率的应用服务交付,这些都给软件开发人员带来了前所未有的压力。其中,软件复用技术被公认为解决这些问题的行之有效的方法。从计算机软件编程的发展历史来看,从面向过程的编程语言到面向对象的高级编程语言的广泛使用,是软件复用技术进步的体现。从对象的复用到更大的组件复用,再到如今的框架的复用、服务的复用,都是在利用他人的优秀成果来放大你的工作价值。当一个新手使用脚手架时,对于一个具体问题,可以套用现成的解决方案加以扩展。使用脚手架的应用,仅需通过简单的注解和配置就可以具备健康状态检查、生产环境就绪、可观测等基本服务能力。对于一个业务逻辑问题,可以复用已有的逻辑,一步步迭代,敏捷开发。

DRY原则(Don’t Repeat Yourself)
DRY原则直译过来就是“不要重复你自己”。这一原则和复用原则类似,强调尽量在项目中减少重复的代码行、重复的方法、重复的模块。其实,软件设计原则和模式最本质的思想都是“消除重复”。
我们经常提到的重用性和可维护性其实是基于减少重复这一简单而重要的思想的。DRY原则意味着系统内的每一个部件都应该是唯一的,并且是具有明确含义的(不模糊的)。我们可以通过应用职责单一、接口隔离等原则尽量拆分系统、模块、类和方法,使每一个部件都是职责明确并且可重复使用的。

开闭原则(Open Close Principle)
开闭原则中的“开”就是指对功能的扩展是开放的,“闭”是指对于原有代码的修改是封闭的。通俗一点讲,软件系统通常是由各种模块组成的,软件系统在增加一项新的功能时,应该在不修改现有代码的基础上操作。实现开闭原则的关键就是“抽象”,从微观的角度讲,开闭原则适用于一个业务模型的类的设计,把系统内的所有可能行为抽象为一个抽象底层,在这个抽象底层中规定需要提供的方法接口,具体实现类通过集成、代理、委托的方式,扩展实现新的行为或者新的功能。从宏观的角度讲,我们说开闭原则就是将公共模块、开发约定、最佳技术实践经过共享、提炼沉淀到封闭的底层技术基座;而将变化频繁的业务模块、独特的功能逻辑通过继承、组合和集成的方式实现对扩展的开放。

不要重新造轮子
不要重新造轮子(Stop Reinventing The Wheel),这个原则可以说是软件开发里的“金科玉律”。在实际的软件工程场景中,脚手架的使用正是为了我们避免重新造轮子。如果你不借助已有框架或者工具,不仅不会提升开发效率,还会将自己陷入重新造轮子的风险中。

架构分层

在搭建脚手架之前,首先了解一下目前比较流行的两种框架结构:MVC 分层、领域驱动设计DDD(六边形架构、洋葱架构、整洁架构和清晰架构等),MVC作为老牌分层结构,在大多数公司很多人用过,而DDD(领域驱动设计),如果你不是平时喜欢专研新技术的开发,只是专注公司项目,那么你应该没听过,但是DDD这个概念提出来已经有20多年了,至于是不是为了炒概念,大家自己去学习一下DDD。
网上很多关于MVC与DDD的比较,这里仁者见仁,智者见智,毕竟DDD目前很多大厂都开始落地实施,并不是停留在设计思想层面,而中小公司用MVC是完全够了,如果选择DDD,首先网上能抄的案例不多,其次公司的开发都得去学习DDD设计理念。

搭建脚手架的方式

搭建脚手架的方式很多种,大家根据实际情况来,主要有几下几种:

想省时,省力就使用开源代码

打开Gitee后端管理框架,你会发现芋道源码、Pig、若依等,这些拿来就能部署使用的框架,而且还开发了一些其他的功能,很适合拿来搭建自己的网站以及中小公司用来二次修改作为企业的项目架构,当然目前看都是典型的MVC架构,如果想使用DDD,可以参考COLAAxon

使用IDEA从零开始创建

1、创建新项目
在这里插入图片描述2.创建Springboot项目
这里Server URL可以用https://start.aliyun.com,因为目前start.aliyun.com暂时不支持Java21,所以基于start.spring.io去创建项目,后续需要集成SpringCloudAlibaba以及相关依赖我会在Gradle配置引入;
在这里插入图片描述
在这里插入图片描述

使用云原生脚手架

1.访问https://start.spring.io/,选择Springboot以及Java版本等信息,下载后导入IDEA
在这里插入图片描述
2.访问https://start.aliyun.com/,这里可以选择应用架构以及需要引用的依赖等信息,下载后导入IDEA
在这里插入图片描述

总结

因为目前需要从零开始去搭建企业级框架,所以脚手架我选择用IDEA来搭建,并在搭建过程中通过博文分享我的经验及源码,同时会借鉴开源框架及网上各位大佬好用的设计思路,尽量让大家了解主流企业级框架所用的技术点 ,废话不多说,从下章开始我们就开始写代码。

  • 15
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值