Go 语言起源于 2007 年,并在 2009 年正式对外发布,由 Google 公司推出。它是一门非常年轻的语言,它的主要目标是「兼具 Python 等动态语言的开发速度和 C/C++ 等编译型语言的性能与安全性」。具有「部署简单、并发性好、语言设计良好、执行性能好」等优势。目前市面上有很多很多重要的开源项目都是使用Go语言开发的,诸如 Docker、 Kubernetes。今天主要推荐10本 Go语言进阶学习书籍。

家庭读书系列可点击查看:

算法学习书籍推荐系列可点击查看:

Linux书籍推荐系列可点击查看:

Go 语言学习书籍推荐系列可点击查看:

《The Go Programming Language》-《Go 语言圣经》

TheGoProgrammingLanguage.png

Go语言圣经.png

本书是一本开源图书。原版为英文图书《The Go Programming Language》,本书仅供学习交流之用。

注意,在线预览不是最新版,最新以仓库里的内容为准。

《Go专家编程》

Go专家编程.png

本书深入地讲解了Go语言常见特性的内部机制和实现方式,大部分内容源自对Go语言源码的分析,并从中提炼出实现原理。通过阅读本书,读者可以快速、轻松地了解Go语言的内部运作机制。

作者:

  • 任洪彩,华为云原生团队核心成员,开源爱好者。

【点击查看详情】

《Go程序设计语言》

Go程序设计语言.png

本书由《C程序设计语言》的作者Kernighan和谷歌公司Go团队主管Alan Donovan联袂撰写,是学习Go语言程序设计的指南。本书适合作为计算机相关专业的教材,也可供Go语言爱好者阅读。

《Go语言编程之旅》

Go语言编程之旅.png

《Go语言编程之旅:一起用Go做项目》

本书对项目开发、细节分析、运行时分析等核心内容进行了较为深入的剖析,提供了相对完整的项目实践经验。在项目迭代过程中,难免会遇到问题,因此本书针对Go语言的大杀器(分析工具)及常见问题进行了全面讲解,帮助读者对各类问题进行排查。本书适合有一定Go语言基础的读者以及相关开发人员阅读。

作者:

  • 陈剑煜(网名:煎鱼),“Go夜读” SIG小组成员,对Go语言有一定的兴趣和经验。
  • 徐新华(网名:polaris),Go语言中文网站长,目前在北京一家创业公司担任CTO。8年来一直致力于推广Go语言在国内的发展,致力构建国内Go语言中文社区。

【点击查看详情】

《Go语言高级编程》

Go语言高级编程.png

本书从实践出发讲解Go语言编程的进阶知识。

作者:

  • 柴树杉,国内第一批的Go语言爱好者,Go语言代码贡献者,CGO资深用户。
  • 曹春晖,在Web领域工作多年,开源爱好者。对大型网站系统的架构和相关工具的实现很感兴趣,并且有一些研究成果。目前在滴滴平台技术部工作。

《Go语言核心编程》

Go语言核心编程.png

本书是一本系统介绍Go 语言编程的书籍。首先介绍Go 语言的基础知识,使读者对Go 语言有一个整体的认知。本书适合各个层次的Go 语言开发者阅读,初学者可以系统地从头学习,有一定的编程经验者可以选择性地阅读本书。

作者:

  • 李文塔,现就职于腾讯,FiT(前身为财付通)支付账户核心DBA,高级工程师。

《Go语言程序设计》

Go语言程序设计.png

本书是国外最经典的Go语言著作,Go语言编程的先驱者Mark Summerfield的实践经验总结。这是一本Go语言实战指南,帮你了解Go语言,按Go语言的方式思考,以及使用Go语言来编写高性能软件。

作者展示了如何编写充分利用Go语言突破性的特性和惯用法的代码,以及Go语言在其他语言之上所做的改进,并着重强调了Go语言的关键创新。

作者:

  • Mark Summerfield , Qtrac公司创始人,独立的培训讲师、顾问、技术编辑,Go、Python、C++、Qt和PyQt方面的技术作家。

《Go语言高并发与微服务实战》

Go语言高并发与微服务实战.png

微服务作为开展云原生技术落地的核心,它将复杂的单体应用按照业务划分并进行有效地拆分,每个微服务都可以进行独立部署和开发,大大提升了应用开发效率。Go语言作为新生代的编译型编程语言,具备语法简单、高并发性能良好和编译速度快等特点,是微服务架构落地实践的绝妙利器。

作者:

  • 朱荣鑫,微服务早期实践者,微服务方面技术专家,对高并发、分布式有多年深入的实践经验。
  • 黄迪璇
  • 张天,服务端技术专家,精耕于微服务、分布式、数据库和性能调优等后端开发领域。

《Go并发编程实战》

Go并发编程实战.png

本书首先介绍了Go语言的优秀特性、安装设置方法、工程结构、标准命令和工具、语法基础、数据类型以及流程控制方法,接着阐述了与多进程编程和多线程编程有关的知识,然后重点介绍了goroutine、channel以及Go提供的传统同步方法,最后通过一个完整实例——网络爬虫框架进一步阐述Go语言的哲学和理念,同时分享作者在多年编程生涯中的一些见解和感悟。

本书适用于有一定计算机编程基础的从业者以及对Go语言编程感兴趣的爱好者,非常适合作为Go语言编程进阶教程。

作者:

  • 郝林,从业12年有余的软件工匠,国内知名的Go语言技术布道者,Go语言北京用户组和GoHackers社群的发起人和组织者,多套免费在线Go语言教程的作者,深信Go语言在人工智能时代和机器人时代也能大放异彩的科技信徒。

《Go语言并发之道》

Go语言并发之道.png

本书原作为:《Concurrency in Go - Tools and Techniques for Developers》

本书作者带你一步一步深入这些方法。你将理解 Go语言为何选定这些并发模型,这些模型又会带来什么问题,以及你如何组合利用这些模型中的原语去解决问题。学习那些让你在独立且自信的编写与实现任何规模并发系统时所需要用到的技巧和工具。

作者:

  • Katherine Cox-Buday,一名计算机科学家,目前工作于 Simple online banking。她的业余爱好包括软件工程、创作、Go 语言(igo、baduk、weiquei) 以及音乐,这些都是她长期的追求,并且有着不同层面的贡献。