如何分包
良好的分包让代码更加清晰,本节主要讲述在不同场景下分包的方法,关于包命名请参考包命名。
一、去除无意义包
golang
中禁止使用类似util
的无意义包名,有时开发者会将专门使用api
来给提供用户使用的包命名,看似加速了代码的定位,但随着包体积的增长,将越来越难以维护包之间的依赖关系。
1.1 案例分析
考虑这样的util
包结构:
该包从命名到组织有如下错误:
使用复数
utils
作为包名;使用含义不清的
utils
作为包名。
1.2 解决方法
将该包的内容进行分离,例如file.go
中的函数有:
该文件前四个函数是对文件系统的操作,而后两个函数则是文件I/O操作,在进行分包时应为文件系统创建fs
或filesystem
包,为文件I/O操作创建fileio
包,并将函数分别移入。修改后的文件结构应为:
对于utils中其他组件同样按照功能进行分包。
Last updated
Was this helpful?