[关闭]
@startover 2016-09-14T21:28:27.000000Z 字数 2684 阅读 2356

Python程序员的Golang学习指南(I):Go 之初体验

Golang


Go 之初体验

Go 语言简介

Go,又称 golang,是Google开发的一种静态强类型,编译型,并发型,并具有垃圾回收功能的编程语言。

Go 语言于2009年11月正式宣布推出,自2012年发布1.0,最新稳定版1.7。目前,Go的相关工具和生态已逐渐趋于完善,也不乏重量级项目,如 Docker, Kubernetes, Etcd, InfluxDB 等。

Go 语言能解决什么样的问题

同绝大多数通用型编程语言相比,Go语言更多的是为了解决我们在构建大型服务器软件过程中所遇到的软件工程方面的问题而设计的。乍看上去,这么讲可能会让人感觉Go非常无趣且工业化,但实际上,在设计过程中就着重于清晰和简洁,以及较高的可组合性,最后得到的反而会是一门使用起来效率高而且很有趣的编程语言,很多程序员都会发现,它有极强的表达力而且功能非常强大。

总结为以下几点:

建议有兴趣的同学看看 Go在谷歌:以软件工程为目的的语言设计

Go 语言相对 Python 有哪些优势

这里引用一段知乎上某大牛的回答,如下:

从个人对 Golang 的初步使用来说,体验还是相当不错的,但是也有下面几点需要注意:

另外,推荐阅读 Golang 新手开发者要注意的陷阱和常见错误

学习资料推荐

建议先把 Go 的官方文档过一遍,主要有以下几项:

官方文档看完后,基本也算入门了,这时候可以看看 Go 的示例代码,或者去 Project Euler 刷刷题。

当然也可以去知乎看看大牛们都是如何学习的,链接 https://www.zhihu.com/question/23486344

总结

虽然 Go 有很多被诟病的地方,比如 GC 和对错误的处理方式,但没有任何语言是完美的,从实用角度来讲,Go 有着不输于 Python 的开发效率,完善的第三方工具,以及强大的社区支持,这些就足够了。

参考链接:
https://golang.org/doc/
https://talks.golang.org/2012/splash.article
https://www.zhihu.com/question/21409296
https://www.zhihu.com/question/23486344
http://stackoverflow.com/questions/7933460/how-do-you-write-multiline-strings-in-go
http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/
http://www.oschina.net/translate/go-at-google-language-design-in-the-service-of-software-engineering

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注