diff --git a/src/project-structure/index.md b/src/project-structure/index.md new file mode 100644 index 0000000..98f710e --- /dev/null +++ b/src/project-structure/index.md @@ -0,0 +1,15 @@ +# 项目基本结构 + +Go 语言项目的基本结构是非常自由的,基本上没有什么固定的要求或者规定可以遵守。 + +所以一般情况下我们会习惯性的按照功能或者按照业务属性对相关内容进行分类分目录放置。例如一个电商贸易类网站就可以像下图一样组织一套类似于传统 MVC 项目的结构。 + +![MVC模式项目结构](./mvc-mode.svg) + +但是 Go 语言中的项目没有那么多的范式,同样的这个电商贸易类网站还可以用下面这样的面向业务的项目结构。 + +![面向业务的项目结构](./busi-mode.svg) + +> 在这两个图示中,使用绿色标记的内容是文件夹,在 Go 中也是一个`package`。 + +以上两个图示中的项目都是带有`go.mod`文件的,这说明这个项目是使用`go mod`命令创建的,是使用了 Go Module 技术的项目。接下来就来看一下如何使用`go mod`命令来创建项目。