【电商实战 00】用敏捷开发的思想,带你快速上手实战项目
大家好,我是阳哥。内容比较硬核,建议先收藏再观看。
前言
有好多小伙伴私信我想学 Go,想快速上手商业项目。
阳哥必须满足你们的要求,那我就更新一系列课程,并且把项目开源出来吧。
适合人群:
有一定 Go 基础,想快速上手商业实战项目的伙伴
本期解决的重点问题:
教你学会如何看文档
教你学会如何“抄作业”,也就是官方示例,或者其他优秀项目的源码
教你学会如何用敏捷开发的思路,聚焦实现阶段性的目标
开源地址
这是基于 goframe1.16 版本已经开发完毕的,完全开源的电商实战项目:https://github.com/wangzhongyang007/goframe-shop
为了避免混乱,最新的电商系统 v2 版本开启了新的仓库:https://github.com/wangzhongyang007/goframe-shop-v2
我也会带着大家基于 Go 的最新版本去开发实践电商实战项目,让大家少踩坑,高效学。
视频地址
经过充分考虑和小伙伴们的建议,我决定每期内容都更新文章+视频。
文章的重点是介绍本期会用到的硬核知识点。
视频的作用是带着大家一起,一步一步的去实现商业项目的需求,这样对初学者才友好。
这是本期内容在 B 站的视频地址:https://www.bilibili.com/video/BV1bt4y1K7Lj/
开发流程
我梳理了 GoFrame V2 最新版的开发流程:
设计表结构,初始化项目,修改配置文件
使用 gf gen dao 生成对应的 dao/do/model
编写 api 层:定义业务侧数据结构,提供对外接口的输入/输出数据结构
编写 model 层:定义数据侧数据结构,提供对内的数据处理的输入/输出数据结构
编写 logic 层,自动生成 service 层代码。(通过配置 goland File Watcher 自动生成,也可以通过 gf gen service 手动执行脚本生成,建议前者)
在 service 层代码生成 RegisterXX()方法后,在对应的 logic 模块注册服务(每个模块只需要写一次)
编写 controller 层,接收/解析用户输入的参数,调用 service 层的服务。
注册路由,对外暴露接口,比如这个项目是编写 cmd.go 文件。
在 main.go 中 加入一行 _ "project-name/internal/logic" (只需写一次)
在 main.go 中加入一行 _ "github.com/gogf/gf/contrib/drivers/mysql/v2" (如果你使用的是 mysql;只需写一次)
其中 9、10 只需要添加一次;步骤 6 每个模块只需要写一次
相关资料
这是我在开发过程中对我帮助很大的资料,相信对你也会有所帮助:
GoFrame V2 真香,我是 Get 到了高内聚低耦合的点,你呢?https://juejin.cn/post/7156119733312438279
官方文档:https://goframe.org/pages/viewpage.action?pageId=57183756
快速开始:https://goframe.org/pages/viewpage.action?pageId=1114399
官方简单示例:https://github.com/gogf/gf-demo-user
官方完整示例:https://github.com/gogf/focus-single
一起学习
公众号:程序员升级打怪之旅
微信号:wangzhongyang1993
版权声明: 本文为 InfoQ 作者【王中阳Go】的原创文章。
原文链接:【http://xie.infoq.cn/article/11b257e0df0c6e0311eda5a64】。文章转载请联系作者。
评论 (1 条评论)