• 技术文章 >后端开发 >Golang

    分享十个优秀的 Go 类库

    GuanhuiGuanhui2020-06-16 17:47:57转载1853

    1. Golang-Set

    Go 有数组,切片,映射,但是它没有集合。您可以使用布尔映射来模拟一个集合,但是最好拥有一个具有正确操作和语义的实际数据类型。

    这是 golang-set 的地址

    2. Color

    让我们继续 color 的介绍。在编写命令程序时,使用颜色突出重要的消息和区分错误,成功和警告是非常有用的。

    color 包提供了一种简单的方法来为程序添加一些颜色(看到我做了什么吗?) 。它使用 ANSII 转义码,也支持 Windows!

    4. Gen

    gen 工具会为您生成代码——特别是类型识别代码,它试图弥补 Go 中没有模板或泛型的缺陷

    您可以使用一个特殊的注释注释您的类型,然后 gen 会生成您的项目中包含的源文件。

    5. Gorm

    Go 以其简约的风格而闻名。数据库编程也不例外。Go 大多数流行的 DB 库都是非常底层的。Gorm 将对象——关系映射引入到以下特性中:

    但是这并不能涵盖所有内容。

    如果你之前是使用 Python 开发,请不要指望 SQLAlchemy。

    更多的高级用法,你需要去看底层。

    6. Goose

    使用关系数据库时最重要的任务之一是管理模式。

    在一些公司中,修改数据库模式被认为是一种「可怕」的更改。goose 包帮助你更改模式,甚至在需要时进行数据迁移。 你可以随意的 goose upgoose down 。不过要注意你的数据,确保它不会丢失或损坏。

    Goose 的工作方式是对模式进行版本控制,并使用与每个模式对应的迁移文件。迁移文件可以使用 SQL 命令 或 Go 命令。下面是一个添加新表的 SQL 迁移文件示例:

    8. Ginkgo

    Ginkgo 是一个 BDD (行为驱动开发) 测试框架。它可以让你使用类似于英语的语法编写测试,并可以让不太懂技术的人来检查测试(与输出),并验证它们是否符合业务要求。

    一些开发者也喜欢这种风格的测试规范。它与 Go 的内置测试包集成,并经常与 Gomega 结合使用。

    9. Etcd

    Etcd 是可靠的分布式键值存储。该服务器在 Go 中实现,并且 Go 客户端通过 gRPC 与之交互。

    它着重在以下方面:

    10. NSQ

    NSQ 是一个很好的分布式队列。我已经成功地使用它作为一个大型分布式系统的主要组成部分。以下是其一些功能:

    推荐教程:《Go教程

    以上就是分享十个优秀的 Go 类库的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:learnku,如有侵犯,请联系admin@php.cn删除
    专题推荐:go golang
    上一篇:Gin 中实现 HTTP Basic Auth 下一篇:Golang 可以把包名去掉吗?
    大前端线上培训班

    相关文章推荐

    • Golang 能开发前端吗?• Golang 可以开发 Web 吗?• Go String 解析• 使用 Go 来构建一个 CLI 程序• 常见的 Go 处理字符串的技巧

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网