golang go 项目目录结构划分
截取知乎社区核心业务 Golang 化实践之目录结构
.
├── bin --> 构建生成的可执行文件
├── cmd --> 各种服务的 main 函数入口( RPC、Web 等)
│ ├── service
│ │ └── main.go
│ ├── web
│ └── worker
├── gen-go --> 根据 RPC thrift 接口自动生成
├── pkg --> 真正的实现部分(下面详细介绍)
│ ├── controller
│ ├── dao
│ ├── rpc
│ ├── service
│ └── web
│ ├── controller
│ ├── handler
│ ├── model
│ └── router
├── thrift_files --> thrift 接口定义
│ └── interface.thrift
├── vendor --> 依赖的第三方库( dep ensure 自动拉取)
├── Gopkg.lock --> 第三方依赖版本控制
├── Gopkg.toml
├── joker.yml --> 应用构建配置
├── Makefile --> 本项目下常用的构建命令
└── README.md