【Go语言培训】日常开发中,可以使用哪些Go第三方库和工具?
老男孩IT教育
行业新闻
2022年1月18日 16:46
Go语言是服务器端命令的语言,是用于运行软件的语言,也是更快的语言,且支持并发,即算法能够无序运行,那么在日常开发中,可以使用哪些第三方库和工具呢?本篇文章将为大家详细讲解,希望对你们有所帮助,请看下文:
Go语言是服务器端命令的语言,是用于运行软件的语言,也是更快的语言,且支持并发,即算法能够无序运行,那么在日常开发中,可以使用哪些第三方库和工具呢?本篇文章将为大家详细讲解,希望对你们有所帮助,请看下文:
| 业务开发
Gin:一款HTTP框架,使用简单、性能卓越、资料颇多,如果你还在犹豫使用什么框架,它无疑是你最佳的选择!和它配套的swagger工具也是刚需,利用它可以生成swagger文档。
GORM:如果你喜欢orm的方式来操作数据库,选它准没错,同样的也是使用简单、资料较多,如果有读写分离的需求,也可以使用GORM官方提供的插件,配合GORM使用也是非常简单。
errors:Go语言自身提供的错误处理比较简单,也提供了更强大的功能,如:包装异常、包装堆栈等。
zorolog:Go里的日志打印库非常多,日志在日常开发中最好就是存在感低,也就是说性能强,但不能影响到业务代码、使用API简单。
excelize:是一个读写Excel的库,基本上你能遇到的Excel操作它都能实现。
now:是一个时间工具库:获取当前年月日、时分秒,不同时区支持,最后一周、最后一月等。
Decimal:当业务上需要精度计算时,可以使用它,基本上你能想到的精度转换,它都能够实现,配合上GORM也可以将model字段声明为decimal的类型,数据库对应的也是decimal,这样使用起来会更方便。
configor:是一个配置文件读取库,支持/YAML/JSON/TOML等格式。
go-cache:是一个类似于Java中的Guava cache,线程安全,使用简单,不需要分布式缓存的简单场景可以考虑使用。
copier:是一个数据复制的库,与Java中的BeanUtils.copy类似,可以将两个字段相同但对象不同的struct进行数据复制,也支持深拷贝。
| 基础工具库
gomonkey:是一个mock打桩工具,当需要写单元测试时,对一些非接口函数进行mock会比较困难,这时就需要用到它了。
dig:是一个依赖注入库,使用下来有几个好处:1、所有的对象都是单例;2、有一个统一的地方管理对象;3、使用时直接传递对象当做参数进来即可(容器会自动注入)。
cobra:是一个功能强大的命令行工具库,我们用它实现内部的命令行工具。
BloomRPC:一个GRPC可视化工具,比起自己写GRPC客户端的代码,那确实是要简单许多的。
pulsar-client-go:Pulsar官方出品的go语言客户端,相对于Java来说其他语言的客户端几乎是后娘养的;功能会比较少,同时更新也没那么积极;但却没得选。
关于"日常开发中,可以使用哪些Go第三方库和工具?"的话题到这里就结束了,想要学习Go语言,在这里推荐老男孩教育,我们的GO语言课程学习周期为4-6个月,班型有周末班、网络班,学员可以根据自己的实际情况选择适合的班型。
推荐阅读:
