这套资料解决什么问题
很多写 Go 的上班族,刚接触 Gin 时习惯把参数解析、数据库查询和业务逻辑全塞在控制器里。项目一变大,代码就成了面条式逻辑,改一个接口要在多个文件里来回跳。这套资料的核心主题是 Gin 脚手架的重构与领域驱动设计落地,它解决的是“如何把初级脚手架演进成分层清晰、职责单一的项目结构”这一具体场景。它不教 Go 基础语法,而是带你直面真实工程里的痛点:中间件怎么按路由级别生效、参数验证如何与业务逻辑解耦、ORM 操作怎么封装才不臃肿。如果你的 Gin 项目正陷入“越写越乱”的泥潭,这套资料的思路能帮你理清重构方向。
适合什么基础与建议先看的部分
这套内容适合已经能用 Gin 写出基础增删改查接口、但缺乏工程化经验的开发者。如果你连 Go 的结构体和 HTTP 基础都不熟,看重构过程会非常吃力。建议有一定基础的人直接从中间件和依赖注入这两块入手。资料里详细演示了路由级中间件的具体用法,特别是如何把参数验证从前置中间件里剥离出来,让控制器只关心核心业务。这部分是理解后续领域驱动分层的前提,看懂了中间件的拦截与数据传递机制,才能明白为什么要这样拆分代码结构。
学完能独立做什么与资料配合方法
学完这套重构思路,你能独立搭建一套具备分层架构的 Gin 脚手架,并在实际工作中为新模块设计合理的控制器、中间件与数据访问层。你会掌握如何利用依赖注入来管理 GORM 等组件,而不是在每个函数里手动初始化。配合资料练习时,不要只用眼睛看视频演示,必须在本地拉取配套的初始代码仓库,跟着每一讲的进度手动敲代码。重点去跑通参数验证与业务分离的上下两节内容,自己尝试修改响应内容并观察中间件的执行顺序。把 ORM 执行简化的几种方式在本地环境跑通后,尝试用这套逻辑写一个全新的业务模块,验证自己是否真正消化了这种分层设计。
前面我们通过快速课程的方式写了一个初级版本的gin脚手架。目前源码已经发布到github上,并开始把之前的代码细节进行重构和优化。本课程主要是使用,并且接纳大家
课程目录
* 第一章:控制器 cplist.push('第一章:控制器');/
* 第1讲:控制器的使用:返回String和JSON
* 第2讲:中间件的使用(1):判断必要参数
* 第3讲:中间件的使用(2):修改响应内容
* 第4讲:路由级的中间件(1):基本使用
* 第5讲:路由级的中间件(2):参数验证和业务分离(上)
* 第6讲:路由级的中间件(2):参数验证和业务分离(下)
* 第7讲:依赖注入和ORM 使用 (Gorm)
* 第8讲:ORM执行简化:直接返回SQL语句(GORM)
* 第9讲:ORM执行简化:控制器直接返回SQL语句(XORM)
* 第10讲:控制器返回SQL语句:支持参数
* 第11讲:控制器返回SQL语句:支持自定义JSON字段
* 第12讲:DAO层示例:用户DAO的写法
* 第13讲:Service层示例:用户Service层的基本写法
* 第14讲:Service层示例:用户登录示例
* 第15讲:ORM简化:自定义输出key、Query执行






