4

Go语言相关书籍推荐(从入门到放弃)

 1 year ago
source link: https://studygolang.com/articles/31678?fr=sidebar
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
最近总有读者问我可不可以推荐一下go语言入门必读书籍。所以今天就推荐几本。因为笔者也没读过几本,所以就咨询了几位前辈,现在我就把这一份书单介绍给你们,从入门到进阶。

Go语言简介

Go语言是最近几年流行起来的语言,该语言由谷歌发明,现在得到广泛应用。Go语言的最大特点就是语法简单且并发支持度好,开发效率很高。平常我们在C/C++语言中需要几十行的代码量,在Go语言中可能就只需要几行代码就可以搞定。现在也越来越多的人开始转学Go

Go语言优势

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

Go的缺点

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

Go原生应用

  • Docker:一组用于部署Linux容器的工具
  • Openshift:由Red Hat提供的云计算平台即服务。
  • Kubernetes:无缝自动化部署流程的未来
  • Tidb: 开源分布式关系型数据库。
  • InfluxDB:是由InfluxData开发的开源时间序列数据库。
  • Etcd:分布式的键值对数据存储系统,提供共享配置、服务的注册和发现。

Go语言主要用途如下:

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

学习任何一门语言,首先要学习的就是语法,这一本书其实就完全可以带你入门,我读的第一本Go相关书籍就是它,对Go的基础语法、核心用都进行了详细讲解,尤其其中有几篇文章对Go语言陷阱进行讲解,真的很棒,强烈推荐。

  • Go语言程序设计

这本书来头不小,其作者是Kernigan和谷歌公司Go团队主管Alan Donovan。这本书应该说是Go语言入门必读的第一本书。全书总共分为13章,主要内容包括:Go的基础知识、基本结构、基本数据类型、复合数据类型等等。这里就不全列举了。不过这本书我没有读过,所以给他放在了第二位。

  • Go语言编程

这本书是国内某云的研发团队编写的。该公司是国内最早大规模使用Go的。这本强烈推荐给大家,这本书不仅介绍Go语言的关键语法,并且从工程实践的角度介绍Go语言的内容,从中一定会收获不少。

  • Go并发编程实战

这本书讲解了Go语言的最大特点:并发编程。这本书对Go语言并发进行深入讲解,在你熟悉了Go语言基本语法后,强烈推荐大家看一下这本书,让你对并发的理解更上一个层次。

  • Go Web编程

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

  • Go语言编程之旅

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

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

本书以当前流行的微服务架构和Go语言的高并发特性为主线,介绍Go语言微服务的各个组件和并发实战。目前在市面上大部分微服务相关书籍中都是JAVA语言实现的,而本书则是基于Go语言来对微服务结构进行深入剖析,以大量实战总结和案例为主线怼微服务的相关技术做讲解。如果想系统学习微服务,这本书不容错过。

  • Go语言圣经

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

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

Go语言圣经强烈推荐看,兄弟们~~~。

好啦,这一篇文章到这就结束了,我们下期见~~。希望对你们有用,又不对的地方欢迎指出,可添加我的golang交流群,我们一起学习交流。

结尾给大家发一个小福利吧,最近我在看[微服务架构设计模式]这一本书,讲的很好,自己也收集了一本PDF,有需要的小伙可以到自行下载。获取方式:关注公众号:[Golang梦工厂],后台回复:[微服务],即可获取。

我翻译了一份GIN中文文档,会定期进行维护,有需要的小伙伴后台回复[gin]即可下载。

翻译了一份Machinery中文文档,会定期进行维护,有需要的小伙伴们后台回复[machinery]即可获取。

我是asong,一名普普通通的程序猿,让gi我一起慢慢变强吧。我自己建了一个golang交流群,有需要的小伙伴加我vx,我拉你入群。欢迎各位的关注,我们下期见~~~

推荐往期文章:


有疑问加站长微信联系(非本文作者)

280

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK