前言

最近总有读者问我可以可以推荐一下go语言入门必读书籍。所以今天就推荐几本。因为笔者也没读过几本,所以就咨询了几位前辈,现在我就把这一份书单介绍给你们,从入门到进阶。

Go语言简介

GoGoGo

Go语言优势

  • 脚本化的语法;开发效率高,容易上手
  • 静态类型+编译型,程序运行速度有保障;静态类型+编译型语言相对于动态类型+解释型语言的效率高
  • 原生的支持并发编程;降低开发、维护成本/程序可以更好的执行
  • 对于云原生支持比较好,容器化,微服务化比较容易。

Go的缺点

  • 它不支持泛型,即使有很多关于它的讨论。可能也在议程当中,期待那一天的到来。
  • 使用这种编程语言分发的软件包非常有用,但Go在传统意义上并不是面向对象的。
  • 缺少一些库,尤其是UI工具包。

Go原生应用

擅长领域

Go语言主要用途如下:

  1. 服务器编程,如处理日志、数据打包、虚拟机处理、文件系统等
  2. 分布式系统,数据库代理器等
  3. 网络编程,如Web应用、API应用、下载应用
  4. 内存数据库,如groupcache、couchbase的部分组建
  5. 云平台,目前国外很多云平台在采用Go开发,CloudFoundy的部分组建,前VMare的技术总监自己出来搞的apcera云平台。

入门书籍

  • Go语言核心编程
GoGoGo
  • Go语言程序设计
KerniganGoAlan DonovanGoGo
  • Go语言编程
GoGo
  • Go并发编程实战
GoGoGo

进阶书籍

  • Go Web编程

这个是我读的第二本书,本书将教读者运用现代化设计理念构建Go Web应用的方法。阅读本书能让读者学会如何通过依赖注入设计模式来编写测试替身,如何在Web应用中使用并发特性,还有如何在Web服务中创建以及处理JSON数据和XML数据。除此之外,读者还将学会如何尽可能地减少应用对外部框架的依赖,并了解大量与应用测试以及应用部署有关的有价值的生产技术。

  • Go语言编程之旅

这本书的作者是我们的煎鱼大佬,这本书是市面上少有的面向项目实践的一本书。这本书涵盖命令行应用、HTTP应用、RPC应用、WebSocket应用等常见项目,从做、学、排三个方向讲解,让我对项目实践有了更透彻的理解,特别是最后一章,排查和分析问题的总结,让我受益匪浅。

  • Go语言高并发与微服务实战
GoGoJAVAGo
  • Go语言圣经

很多大佬都推荐这一本书,但是我还是把它放在了最后,因为他真的不适合新手学习,里面的练习题真的难。所以一定要有一定经验了再去看这一本书,这本书确实是本好书,但不太适合非 C 系编程语言的人作为入门 Go 的首选。但是强烈推荐大家看一下这本书,不过不是刚入门的时候。

总结

上面这8本书,只是推荐阅读哈,并不是入门一定要看书哈,看视频也是一个不错的选择,B站入门视频就很多,可以白嫖~~~。

Go语言圣经


推荐往期文章: