go编程规范

go编程规范

命名规范

  • 只可以使用字母、下划线、数字
  • 大写字母开头,可以被包外部引用(需要先导入包)
  • 小写字母开头,只可以被包内部调用

包命名

尽量保持package的名字和目录一致,采取有意义的包名,包名使用小写,不要使用下划线和大写字母

package demo

package main

文件命名

使用小写字母,用下划线分割

my_test.go

结构体命名

  • 采用驼峰命名法
  • struct 声明和初始化用多行
//多行声明
type User struct{
	Username string
	Email    string
}
//多行初始化
u := User{
	Username: "ada"
	Email:    "dsfgsdfg"
}

接口命名

  • 命名规范基本和结构体一致
  • 单个函数习惯以"er"为后缀
type Reader interface{
	Read(p []byte) (n int ,err error)
}

变量命名

  • 一般为驼峰命名,遵循以下规则

    • 变量为私有,首字母小写
    • 变量为公有。首字母大写
    • 单词为特有名次,而且是首个单词,则特有名词小写
  • 若变量为布尔类型,则名称一般以"Has"、"Is"、"Can"、"Allow"开头

常亮命名

  • 全部大写
  • _分割

注释

注释符号

  • //
  • /**/

范围

  • 包注释
  • 接口注释
  • 方法注释
  • 代码逻辑注释

代码风格

缩进和括号

  • go语言默认每一行都会加一个;所以前置大括号不能单独一样
  • go可以使用go自带的fmt工具格式化代码
  • 尽量使用Tab,而不是空格

import规范

引入多个包时,按照三中类型区分,标准包,程序内部包,第三方包,建议写的时候有顺序的导入你的包。

错误处理

  • 原则是不能丢弃有返回err的调用,不能用_丢弃,必须全部处理
  • 尽早return
  • 采用独立的错误流处理

测试

  • 单元测试命名规范example_test.go

  • 测试用例必须以Test开头

猜你喜欢

转载自www.cnblogs.com/tomyyyyy/p/12896347.html