DAY-08 入门Go项目3 | 青训营笔记

147 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 8 天

组织项目的代码结构

组织合理的代码结构是十分重要的,一般可以通过2种方法来组织代码结构。

  1. 组织好目录结构。
  2. 选择好模块拆分方法。目的——使项目内模块职责分明,做到低耦合高内聚。

模块拆分

一般有2种拆分模块的方法:按拆分和按功能拆分。

1.按层拆分法

(1)MVC模式

如 MVC 架构中的模块拆分方式。MVC架构中将服务中的不同组件按访问顺序拆分成了Model、View和Controller三层,每层分别负责完成不同的功能:

  • View视图,是提供给用户的操作界面,用来处理数据的显示。
  • Controller控制器,负责根据用户从 View 层输入的指令,选取 Model 层中的数据,然后对其进行相应的操作,产生最终结果。
  • Model模型,是应用程序中用于处理数据逻辑的部分。分为两类——数据承载 Bean、业务处理 Bean,其中数据承载 Bean 指实体类,用作承载业务数据;业务处理 Bean 则是指 Service 或 Dao 对象,用于处理用户提交请求。

2.按功能拆分法

这种方法下,对于不同模块具有的功能单一,能够实现高内聚低耦合。因为所有的功能只需要实现一次,引用逻辑清晰,会大大减少出现循环引用的概率。许多Go项目都采用的都是按功能拆分的模块拆分方式,如 Kubernetes、Docker、Helm、Prometheus 等。

遵循Go代码规范

选择一个编码规范

代码要符合Go编码规范,常见的代码规范如UberGo语言编码规范。

静态代码检查工具

静态代码检查工具可以确保开发者写出的每一行代码都是符合 Go 编码规范的,还能够将静态代码检查集成到 CI/CD 流程中,在代码提交后自动地检查代码,保证了只有符合编码规范的代码才会被合入主干。

  • Go 的静态代码检查工具如golangci-lint