Go 语言编程 — 代码规范

[亡魂溺海] 提交于 2020-10-26 08:26:54

目录

一个项目使用单个 GOPATH

GOPATH 指定了 Golang 项目的 Workspace,Golang 是支持多 GOPATH 的,也就是说:在同一个 Golang 项目中可以同时拥有多个运行环境。多 GOPATH 支持带来了一定的灵活度,但也会导致某些副作用,例如:软件版本的一致性。

诸如 Etcd 或 Camlistore 这样的大项目通常会使用 godep 类似的依赖包管理工具,将所有依赖都保存到某个目录中。也就是说,这些项目都会要求使用一个单一的 GOPATH,它们只能在这个目录内找到对应的版本。

简而言之,如果你认为项目需要一个独立的 GOPATH,那么就创建它,但不要尝试在一个项目中使用多个 GOPATH。

import 规范

  1. 使用 goimports 工具进行管理:能够在保存 *.go 文件时自动格式化文件并检查 import 规范。如果使用的包没有导入,则自动导入;如果导入的包没有被使用,则自动删除。
$ go get golang.org/x/tools/cmd/goimports
  1. 坚持使用分行导入,即便只导入一个包:
import (
    "fmt"
)
  1. 导入多个包时注意按照类别顺序并使用空行区分:标准库包,第三方包,程序内部包:
import (
    "encoding/json"
    "strings"

    "github.com/astaxie/beego"
    "github.com/go-sql-driver/mysql"

    "myproject/models"
    "myproject/controller"
    "myproject/utils"
)
  1. 禁止使用相对路径导入:
import "../net"
  1. 禁止使用 “.” 简化导入:
import . " pubcode/api/broker"

代码风格

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!