我真的习惯了我的Python框架和库,如Flask,Jinja2,Requests还有Kazoo,我真的很担心我找不到一个适合Go的。
但是你可以猜到,Go这个伟大的社区拥有自己独特的库,甚至可以让你完全忘记以前的库。
以下是我的一些偏好-
Python Requests => net / http
内置的net / http 提供了非常棒的HTTP客户端和服务器实现,而且非常易于使用。
Flask + Jinja2=> Gin
Gin是一个HTTP Web框架,其中包含非常简单的API - 路径中的参数,上传文件,分组路径(/ api / v1,/ api / v2),自定义日志格式,服务静态文件,HTML转化以及功能强大的自定义中间件。
可以看看这个benchmark(https://github.com/gin-gonic/gin/blob/master/BENCHMARKS.md)。
CLI Creation=> Cobra
Cobra是一个用于创建功能强大的CLI应用程序的库,同时也是用于生成应用程序和命令文件的程序。
最广泛使用的Go项目中许多都是使用Cobra构建的,包括Kubernetes、etcd还有OpenShift。
我强烈推荐的其他一些库是:Viper,Gonfig还有Awsome-Go。
其他资源
以下是一些其他的资源,这些资源在我的Go之旅中能够显著的帮助到我。
Francesc Campoy(https://twitter.com/francesc)- 你肯定需要查看他的YouTube频道和GitHub资料(https://github.com/campoy)。
Francesc也有一些很多伟大的工作,例如Go Tooling in Action(https://github.com/campoy/go-tooling-workshop)和Web Applications Workshop(https://github.com/campoy/go-web-workshop)。
GopherCon Videos(https://www.youtube.com/channel/UCx9QVEApa5BKLw9r8cnOFEA/playlists,需科学上网)
Go Web Examples(https://gowebexamples.com/)
Golang Weekly(https://twitter.com/golangweekly), Gopher Academy(https://twitter.com/GopherAcademy), Golang News(https://twitter.com/golangnews)的 Twitter账户