Skip to content

golang 编程规范 - 项目目录结构 ​

目录结构 ​

项目的目录结构通常是项目的门面, 使用开人员很快的入手和项目一面了然.

Server ​

/api ​

/model ​

模型或数据的定义

/cmd ​

项目主要的是应用程序.

/internal ​

存放私有应用和库代码. 一些代码, 比较私密的, 不希望在其他应用和库中被导入, 可以将这部分代码放在 /internal 目录下.

/pkg ​

存放可以被外部应用使用的代码库和项目使用到的一些通用方法.

/router ​

存放项目的路由文件

/util ​

存放项目上中的工具

/service ​

项目中新的协程服务

/handler ​

product ​

/configs ​

存放配置文件模板默认配置.

/init ​

存放初始化系统和进程管理配置文件.

projcet ​

Makefile ​

Makefile 工具, 用来对项目进行管理.

/build ​

存放安装包和持续集成相关的文件.

/tools ​

存放项目的需要使用的工具.

doc ​

README.md ​

项目简介和使用文档

/docs ​

项目详细的文档

/logs ​

存放项目的 logs 日志文件

LICENSE ​

项目的版本

CHANGELOG ​

项目的版本更新日志

website ​

/web 或 /website ​

前端代码存放目录, 主要用来存放 web 静态资源, 服务端模板和单页应用. 例如: React, vuejs, nuxtjs, nextjs ...