📃
fresh-go
  • READEME
  • 简介
    • 前言
    • 工程目录结构
  • 快速上手
    • 安装
    • 五分钟教程
Powered by GitBook
On this page

Was this helpful?

  1. 简介

工程目录结构

工程目录结构

使用如下命令创建一个完整的项目

fresh-go new helloworld

你将得到这样的目录结构(包含一些存在于理念,但未创建的文件夹)

.
├── api         // 这里存放 proto、OpenAPI/swagger、JSON schema 等文件,不应该有处理逻辑。
|    └── helloworld
|          └── v1
|               ├── greeter_grpc.pb.go
|               ├── greeter.pb.go
|               ├── greeter.pb.gw.go
|               ├── greeter.proto
|               └── greeter.swagger.json
|
├── cmd         // 这里存放着本项目的应用,每个应用一个文件夹
|    └── server    // 这是一个应用的入口
|            ├── main.go      // 应用启动文件
|            ├── wire_gen.go  // 依赖注入生成的文件
|            └── wire.go      // 依赖注入描述文件
|
├── configs     // 这里存放着配置文件模板或默认配置
|      ├── config.yaml         // 程序使用到的配置文件,由于可能出现密码等信息,被 git 忽略 
|      └── config.yaml.example // 程序使用到的配置文件模板,不应该包含密码等信息
|
├── deployments // IaaS、PaaS、系统和容器编排部署配置和模板(未创建)
├── docs        // 设计和用户文档(未创建)
├── githooks    // git 钩子,目前会在提交前做校验
├── internal    // 这里的代码不会被其他项目所依赖,放业务代码比较合适
|      ├── conf     // 配置相关的代码定义
|      ├── repo     // 持久化相关代码,db/redis(未创建)
|      ├── service  // 业务逻辑地址,按文件夹分功能模块(未创建)
|      ├── server   // gRPC、HTTP、gRPC-Gateway 等服务实例启动/停止
|      └── ui       // gRPC、HTTP 介入层
|          ├── grpc // gRPC 服务入口实现代码
|          └── http // HTTP 服务入口实现代码
|
├── pkg         // 一些公共的代码,比如日志、中间件等
├── scripts     // 放一些脚本文件
├── test        // 放测试文件的地方(未创建)
├── .gitignore
├── .golangci.yml
├── buf.gen.yaml
├── buf.lock
├── buf.yaml
├── go.mod
├── go.sum
└── Makefile
Previous前言Next安装

Last updated 4 years ago

Was this helpful?