一些建议
包的名称是调用者用来引用它的名称的一部分,因此要利用它。
尽量使用单字(sigle-word)包名,如果非得使用多字包名(multiple-word)规范:直接多字连接作为包名。如:stringset, helloworld
尽量不用通用词:good: bufio,bad: buf,尽量不使用无意义的包名:util, common
可理解性的缩写:strconv(string convention)syscall,fmt,用一些比较高频易懂的词
实用工具包
尽量避免实用程序包
使用复数命名实用工具包
在许多地方使用工具函数的情况下
比起单一的整体包,更喜欢使用多个包,每个包集中在一个方面。
在较少地方使用工具函数的情况下
将相关的函数移动到调用者的包中。
为什么其他语言可以?
尽早返回而不是深入嵌套
避免包级别的状态
使用接口来描述函数或方法需要的行为
避免使用全局状态