# zin **Repository Path**: long991/zin ## Basic Information - **Project Name**: zin - **Description**: 手动搭建Go框架 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-10-28 - **Last Updated**: 2021-12-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: Go语言, Gin, Framework ## README # zin #### 介绍 一边学习一边跟着教程写,在写的过程中,也融入了一些自己的想法,一点点进行完善,在学习过程中也学到了很多知识, 也学习到了一些很有用的第三方 扩展,[cobra](http://github.com/spf13/cobra), [cron](http://github.com/robfig/cron/v3), [file-rotatelogs](http://github.com/lestrrat-go/file-rotatelogs) ,感兴趣的小伙伴可以购买学习 ![感兴趣的小伙伴可以扫码购买学习](images/f410c5d61e4bee46e30c0d9b97cc071.jpg) #### 软件架构 站在巨人(GIN)肩上好办事~ 分支my是最原始的框架逻辑, 简单的写了一下路由注册,查找路由的逻辑,还有对request,response进行了简单人封装, 对框架的运行流程有一个概念。感兴趣可以切换到my分支。 #### 安装教程 1. go build -o zin, 然后执行 ./zin app start #### 使用说明 #### 特技 1. 服务容器,框架本身作为一个容器,所有服务可以注册到容器中, 实现即插即用 2. 加入cobra,框架的启动,配置读取,服务提供者列表等都以命令的方式实现, 例如: ./zin app start 用于启动框架 ./zin config mysql.host 获取配置信息 3. 加入定时任务 4. 日志文件的保存, 定时切割 5. 通过命令行可以初始化服务提供者 ./zin provider create --name=xxx,对应的Provider会生成在app/provider/xxx 6. 通过命令行可以初始化command ./zin command new --name=xxx,对应的 command 会生成在app/console/command/xxx/xxx.go 7. 仿照PHP的Laravel框架,.env进行环境变量的配置 , 可以根据APP_ENV灵活配置,配置文件也根据APP_ENV进行分别配置