4 Go 语言规范
4.1 包名
◆ 完整包名组成:引入路径+包名
◆ 源代码中的包名称
- 可以和文件夹名称不一致,建议尽量一致
- 同一文件夹中所有源文件中的包名必须一致
◆ 代码引用时使用包名,而非文件夹名称
◆ 源代码导入的是文件夹路径名称 - 非包名
- 非文件名
4.2 源代码文件名
◆ 文件名称只是约定描述性的,并无任何编程含义
5 ?系统 - 代码结构
6 ?系统 - 包结构
7 包设计规范
7.1 apis包 - 用户接口层
◆ 文件名称可以描述其业务含义的单词
◆ 定义外部交互逻辑和交互形式: UI、RESTful接口
◆ 不涉及任何业务,随时可以替换为其他形式的交互方式
◆ services构造和初始化
7.2 services包 - 应用层接口
◆ 文件名称使用可以描述其业务含义
◆ 需要对外暴露
- DTO、 service interface
- 枚举、常数等
7.3 core包 - 应用层/领域层/数据访问层
◆ 文件名称使用可以描述
业务含义 +分层名称
◆ Service实现
Domain、Dao、 PO