【Golang】goimport格式规范

go import格式规范

对于go import的格式容易被忽略,但是标准的import会让代码阅读者一目了然。import的格式要求是将标准库、当前工程包、golang官方包、初始化包和github.com仓库的引入进行分类、排序,在不容分类间使用空行进行区分。

在goland和IDEA软件中,已经为我们集成了自动化选项。这里介绍一下:

  1. 找到软件的首选项,Mac下直接按command + ,进入。在window平台下,先进入首选项,在搜索栏输入imports即可找到。按照图片的选项选择即可
配置
  1. 看一下区别,修改前:
import (
    "path/filepath"

    "bytes"
    "fmt"

    "github.com/btcboost/copernicus/orm"

    "strconv"

    "golang.org/x/text/currency"

    _ "github.com/go-sql-driver/mysql"

    "github.com/btcboost/copernicus/orm/database"
    "github.com/btcboost/copernicus/conf"
)

修改后

import (
    "bytes"
    "fmt"
    "path/filepath"
    "strconv"
    
    "golang.org/x/text/currency"
    
    _ "github.com/go-sql-driver/mysql"
    
    "github.com/btcboost/copernicus/conf"
    "github.com/btcboost/copernicus/orm"
    "github.com/btcboost/copernicus/orm/database"
)

小技巧: 如果我们当前项目的import已经是乱成一团,那么通过手动格式化将是灾难性的。小技巧来了,将import代码块部分或全部注释,然后保存command + s, 格式就自动调整了(对于gopath中存在重名的包引入,要注意其引入的正确性)。

有人会说这也没什么区别呀,但是如果一个文件中引入了大量的包,各种类型的包都有,那对于代码阅读者将是灾难。另外对于一个项目,如果保持go import格式统一,不光代码美观,还能体现一个团队对于细节的追求。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,314评论 19 139
  • 用到的组件 1、通过CocoaPods安装 2、第三方类库安装 3、第三方服务 友盟社会化分享组件 友盟用户反馈 ...
    SunnyLeong阅读 14,944评论 1 180
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,032评论 6 342
  • 我越来越发现我处理事情的柔和度和敢说出感受了。和人打交道的能力越来越强了, 以前我收到这样屡次延迟交货的话,我会把...
    快乐晴儿阅读 2,713评论 0 0
  • 青春时期的故事总是美丽的,又伴着些许感伤,那段时光里每个人都会有很多个小秘密,那些小秘密却会成为使我们成长的动力,...
    清风挽月阅读 1,014评论 0 1