Go 高质量编程与性能调优 | 青训营笔记

77 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 2 天

一、本堂课重点内容:

  • 本堂课的知识要点有哪些?
    • 如何编写更简洁清晰的代码
    • 常用Go语言程序优化手段
    • 熟悉Go程序性能分析工具
    • 了解工程中性能优化的原则和流程

二、详细知识点介绍:

1. 高质量编程

高质量代码——正确可靠、简洁清晰 即 边界情况、异常处理、简洁清晰

1.1 编程原则:

  • 简单性、尽量简单清晰的逻辑
  • 可读性、确保代码可读
  • 生产力、团队整体工作效率

1.2 编码规范

代码格式: 推荐使用gofmt自动格式化代码、常见的IDE都支持方便的配置

注释:

公共符号、实现过程、实现原因(额外的上下文等)、限制条件

公共符号始终要注释

  • 任何既不明显也不简短的公共功能必须予以注释
  • 无论长度或复杂程度如何对库中的任何函数都必须进行注释
  • 对功能和如何工作进行注释
  • 例外,不需要注释实现接口的方法,如第二张图

image.png

image.png

命名规范:

  • 缩略词全大写,但当其位于变量开头且不需要导出时,使用全小写
    • 例如使用ServeHTTP 而不是ServeHttp
    • 使用XMLHTTPRequest 或者xmlHTTPRequest
  • 全局变量在其名字中需要更多的上下文信息,使得在不同地方可以轻易辨认出其含义

image.png 将deadline替换成t降低了变量名的信息量

image.png 函数名不携带包名的上下文信息

2. 性能调优实战

定位性能瓶颈最大的地方在哪

3.

4.

三、实践练习例子:

  • 有什么实践举例帮助理解知识点?

四、课后个人总结:

  • 本章有什么知识点不容易掌握?
  • 什么地方容易与其他内容混淆?

五、引用参考:

  • 我参考了哪些外部博客/笔记/文章?
  • 文章中有什么地方是我参考引用了外部博客/笔记/文章的?