程序员书库(ID:CodingBook) 猿妹编译
链接:https://linuxhint.com/go_programming_language_donovan_kernighan/、https://xdg.me/blog/book-review-the-go-programming-language/
腾讯工程师在用哪种编程语言?可能是外界最关心的问题之一。昨日,腾讯发布《腾讯研发大数据报告》,这个问题终于有了答案。
在编程语言中,使用最多的语言是C++,其次是JavaScript。第三是Go,然后Java、Python位列4、5名。
腾讯表示,随着云计算和大数据在鹅厂的应用发展,Go语言首次跻身鹅厂编程语言排名TOP5。
是不是又明确了自己要学哪一门编程语言呢?如果Go编程语言在你的2020年学习计划当中,那么下面要说的这本书,你可别错过了。
讲真,《Go程序设计语言》绝对是最好的Go编程书籍之一:
本书是学习Go语言程序设计的指南。本书共13章,主要内容包括:Go的基础知识、基本结构、基本数据类型、复合数据类型、函数、方法、接口、goroutine、通道、共享变量的并发性、包、go工具、测试、反射等。
从篇幅上来讲,这本书高达380页,是免费书籍《little Go Book》的7倍,《Introduction to Programming in Go》的5倍。那么,问题来了,这么大篇幅的一本书,是否值得花时间和金钱去阅读呢?我想这取决于你的学习方式,相信大部分读过的人对这个问题答案都是,值得。
阅读路线
作者艾伦 A. A. 多诺万假定读者至少具备一门编程语言经验,诸如Python,JavaScript,Java,C或任何其他通用语言,因此,作者并没有介绍过多编程语言中互通的概念,循环,if-else语句等。
第一章的“入门”为本书的许多出色之处奠定了基础,除了必须的一个“ Hello,World”程序之外,它还简要介绍了几个简化版的真实示例,包括命令行参数、找出重复行、Gif动画生成、URL提取和一个Web服务器。
本书的其余部分也是遵循相同的模式,通常是介绍几个不同的代码示例,其中大部分都是具体实例,而不仅仅是玩具代码,此外,末尾还有一系列练习,这对想要结构化学习Go编程的人来说是非常有益的。
Go语言是基于并发性设计的。大多数现代处理器都是多核和多线程的,但程序员在编写在这种架构上运行的程序时,却忽视了其复杂性。随着云计算向分布式系统发展,并发代码将很快成为最好的选择,在Go并发编程这一章,作者用了一种通俗易懂的方式讲解,让读者可以更好的理解并发。
书中稍显不足的地方
前面我们提到本书中含有大量实例代码,因此,代码中也会涉及到标准库的使用,但是书中并没有对这些标准库本身进行全面的介绍,这点还是稍稍有些不足,毕竟标准库的Go语言的强大优势之一。
配套网站
这本书还附带了一个网站,你可以直接通过这个网站导入书中的程序并运行它,这样你就可以不用一个个敲,当然建议你每个代码还是自己手动敲一遍,运行一遍,此外,你还可以在该网站上免费阅读第一章,判断这本书是否适合你。(网站地址:https://www.gopl.io/)
豆瓣评论:
@feilengcui008:go语言圣经,内容和表达都十分出色,英文版的读来更舒服
@匿名:对于语言本身的讲解 比《go学习笔记》顺畅很多
@二果子:语句翻译得难懂。。。。
不知道你是否读过这本书,如果读过,留言和大家讨论一下读后感。