【Go】Go语言最佳实践建议

本文提供了Go语言的最佳实践建议,包括指导原则(简单性、可读性和生产力)、标识符的选择、注释的编写、包和函数设计、错误处理、并发处理以及推荐的开发工具。强调了代码的可读性和维护性,提倡使用gofmt和vet等工具来保持代码规范。
摘要由CSDN通过智能技术生成

一. 介绍

每种语言都会有基本的语言规范,本文将会介绍Go语言实战建议 Practical Go: Real world advice for writing maintainable Go programs

二. 指导原则

Go语言有以下3点基本指导原则

  1. 简单性: 简单性是Go语言的最高目标,无论我们编写什么程序,我们都应该同意这一点它们很简单。很多情况下我们都害怕遇到一个问题就是 我不懂这段代码,不知如何修复,这会导致软件复杂不可靠。
  2. 可读性: 可读性很重要,因为所有软件不仅仅是Go语言程序都是由人类编写的,供他人阅读。执行软件的计算机则是次要的。代码的读取次数比写入次数多。一段代码在其生命周期内会被读取数百次,甚至数千次。可读性是能够理解程序正在做什么的关键,编写可维护代码的第一步是确保代码可读。
  3. 生产力: Go程序员应该觉得他们可以通过Go语言完成很多工作。快速编译是Go语言的一个关键特性,也是吸引新开发人员的关键工具,Go语言编译只需要几秒钟。Go程序员相对于C++来说不会花费整天的时间来调试不可思议的编译错误。

三. 标识符

标识符是用来表示名称的单词,例如变量名称、函数名称、方法名称、类型名称、包名称等等。
可读性是良好代码的定义质量,因此选择好名称对于Go代码的可读性至关重要。

  1. 标识符命名应该清晰而不是简洁
    • 好的命名应该简洁: 好的名字不一定是最短的名字,但好的名字不会浪费在无关的东西上。
    • 好的命名应该具备描述性: 好的命名会描述变量或常量的应用,而不是它们的内容。好的命名应该描述函数的结果或方法的行为,而不是它们的操作。好的命名应该描述包的目的而非它的内容。
    • 好的命名应该是高可读性: 好的命名应该是具有高可读性,能够从名字中推断出使用方式。
  2. 标识符长度有以下要求
    • 短变量名称在声明和上次使用之间的距离很短时效果很好。短变量p,我们只需要看2行代码就可以知道它的用途。
      var p = 0
      p += count
    
    • 长变量名称需要证明自己的合理性,名称越长需要提供的价值越高。userCount长变量一眼就可以知道是用于表示有多人用户
      var userCount int
    
    • 请勿在变量名称中包含类型名称。例如不应该这样定义var usersMap map[string]int,这个时候后缀的Map可以省略直接定义成这样var users map[string]int
    • 常量应该描述它们持有的值,而不是该如何使用。
    • 对于循环和分支使用单字母变量,参数和返回值使用单个词,函数声明使用多个单词,包的声明使用单个词。
      # 循环
      for i, v := range items {}
      # 函数、参数和返回值
      func getUserCount(endTime int64) (int64) {}
      # 包
      package http
    
    • 包的名称是调用者用来引用名称的一部分,因此要好好利用这一点。</
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值