静态检查规范:golangci-lint 与 nolint 的克制使用
gofmt、goimports、go vet 属于无争议的基础项:格式统一由机器保证,vet 作为官方静态分析工具,能在编译前发现 printf 参数不匹配、锁被拷贝等典型错误。真正的分歧集中在静态分析覆盖不到的区域:被 丢弃的 error、未关闭的 HTTP 响应体、以 err == io.EOF 判断错误、持续增长的函数。项目规模扩大后,这些缺口会转化为 code review 中反复出现且难以收敛的争议:一方主张应当检查错误,另一方声称该行为是有意为之,评审无法达成一致。
8 min read