从零开始Go语言Ⅳ-基础P2 | 青训营笔记

103 阅读2分钟

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

前言
在语言学习中,我们会受到各种规定潜移默化的影响,在coding的同时有一些良好的习惯将会事半功倍,同时简洁高效的代码也是我们调试优化的最终目标。

高质量编程

概述

核心思想

编写的代码能够达到正确可靠、简洁清晰

  • 各种边界条件是否考虑完备
  • 异常情况处理,稳定性保证
  • 易读易维护

基本原则

开发过程效率高、程序运行稳定可靠、性能高,代码简洁美观、易于维护。

  • 简单性:摒弃复杂的结构,尝试将其简化为逻辑清晰简单的代码。过于复杂的代码不仅编写难、维护难,更重要的是如果没有对思路进行整理可能一段时间后连自己都无法入手。
  • 可读性:指的是在其他开发人员没有进行太多联想或猜测的情况下就能理解代码的含义,这点对于自己和团队来说都十分重要。

编码规范

代码格式

自动化工具
gofmt
gofmt是一个cli程序,会优先读取标准输入,如果传入了文件路径的话,会格式化这个文件,如果传入一个目录,会格式化目录中所有.go文件,如果不传参数,会格式化当前目录下的所有.go文件。

goimports
goimports可以自动对代码中的依赖包进行管理,如果有用到,就会自动import,也会对没有用到的包进行自动删除。相较于手动变动包来说,极大提高了效率,减少了手工维护的时间成本。
首次使用,goimports可以通过以下命令进行安装。

$ go install golang.org/x/tools/cmd/goimports@latest

注释

在学习第一门语言时,老师曾强调了注释重要性,但当时代码量不大而且有点偷懒,但很快偷懒的代价尽数返还,在合作项目时多次遇到代码沟通问题,不得不让我对注释重视了起来。

  • 解释代码作用
  • 代码如何实现
  • 代码目的及调试错误点

命名规范

Effective Go 命名规则 命名规范在所有语言学习的头几章都会有一定的篇幅讲解,但在手册之外有一些更加良好的习惯需要去更多了解内化。

待整理后持续更新

参考

  • 字节课程-Go语言原理与实践
  • 菜鸟教程-Go语言
  • Wiki-Go社区