关注公众号【程序员书单】后回复“book”便可领取30+精品免费电子书git
Go 是一种简单、小巧、使人愉悦的语言。它也有一些犄角旮旯,但绝大部分是通过精心设计的。它的学习速度使人难以置信,而且规避了其余语言中一些不那么广为人知的特性。程序员
现现在愈来愈多的互联网公司开始使用go语言,有的初创公司开始使用go语言打造基础架构,而知乎这样的公司也基本上踏上了go语言的路子,或许,将来的互联网公司会愈来愈多地使用golang,那么,你想学习一下这门将来的语言么,今天就来推荐一份go语言书单吧。golang
go语言系列书单编程
Go语言核心编程服务器
Go语言的核心语言特性包括:类型系统、接口、并发。这三部分是Go语言精华、优美、也是重要的特征,本书紧密围绕这三个主题展开。以“类型系统”为例,Go语言中的类型有:简单类型、复合类型、命名类型、未命名类型、静态类型、动态类型、底层类型、接口类型、具体类型以及类型字面量等诸多概念,这些概念在其余Go类图书里面鲜有介绍,本书试图帮助读者梳理清楚这些类型的含义,创建概念,认清类型本质并学会正确使用;微信
在接口章节,不单介绍了接口概念和用法,还深刻分析了接口的机制,使读者对Go语言非侵入式的接口有更深刻的理解;在并发编程章节,书中给出了5个并发编程范式,并用图描述并发程序的模型,通俗易懂,这也是本书读特色。网络
此外本书还拿出一整章内容介绍Go语言编程过程当中可能遇到的陷阱,不只告诉读者陷阱是什么,正确使用方式是什么,同时也给出出现这种问题的根本缘由,使读者后续可以避免犯一样的错误。本书最后从哲学角度论述下Go语言的编程思想,相信Go语言爱好者必定能够从书中找到本身感兴趣内容多线程
做者介绍架构
李文塔,现就任于腾讯,FiT(前身为财付通)支付帐户核心DBA,高级工程师。近十年金融系统开发、运维经验,前后参与2016年到2018年微信春节红包项目和支付帐户核心多地多活容灾项目。并发
Go语言高级编程
本书从实践出发讲解Go语言的进阶知识。本书共6章,第1章简单回顾Go语言的发展历史;第2章和第3章系统地介绍CGO编程和Go汇编语言的用法;第4章对RPC和Protobuf技术进行深刻介绍,并讲述如何打造一个本身的RPC系统;第5章介绍工业级环境的Web系统的设计和相关技术;第6章介绍Go语言在分布式领域的一些编程技术。
书中还涉及CGO和汇编方面的知识,其中CGO可以帮助读者继承的软件遗产,而在深刻学习Go运行时,汇编对于理解各类语法设计的底层实现是必不可少的知识。此外,本书还包含一些紧跟潮流的内容,介绍开源界流行的gRPC及其相关应用,讲述Go Web框架中的基本实现原理和大型Web项目中的技术要点,引导读者对Go语言进行更深刻的应用。
本书适合对Go语言的应用已经有一些心得,并但愿可以深刻理解底层实现原理或者是但愿可以在Web开发方面结合Go语言来实现进阶学习的技术人员学习和参考。
柴树杉,国内较早的一批Go语言爱好者,Go语言代码贡献者。对WebAssembly技术有必定研究,除本书外还著有《WebAssembly标准入门》一书。GitHub帐号为chai2010。
曹春晖,在Web 领域工做多年,开源爱好者。对大型网站系统的架构和相关工具的实现很感兴趣,而且有一些研究成果。目前在滴滴平台技术部工做。
Go Web编程
本书全面介绍使用Go语言开发Web应用所需的所有基本概念,并详细讲解如何运用现代设计原则使用Go语言构建Web应用。本书经过大量的实例介绍核心概念(如处理请求和发送响应、模板引擎和数据持久化),并深刻讨论更多高级主题(如并发、Web应用程序测试以及部署到标准系统服务器和PaaS提供商)。
本书以一个网络论坛为例,讲解如何使用请求处理器、多路复用器、模板引擎、存储系统等核心组件构建一个Go Web应用,而后在这一应用的基础上,构建出相应的Web服务。
值得一提的是,本书在介绍Go Web开发方法时,基本上只用到Go语言自带的标准库,而不会用到任何特定的Web框架,读者学到的知识将不会局限于特定的框架,即便未来须要用到现成的框架或者自行构建框架,仍然会从本书中获益。
本书除了讲解具体的Web开发方法,还介绍如何对Go Web应用进行测试,如何使用Go的并发特性提升Web应用的性能,以及如何在Heroku、Google App Engine、Digital Ocean等云平台上部署Go Web应用;此外,书中还传授一些Go Web开发方面的经验和提示。这些重要的实践知识将帮助读者快速成为真正具备生产力的Go Web开发者。
阅读本书须要读者具有基本的Go语言编程技能并掌握Go语言的语法。本书适合全部想用Go语言进行Web开发的读者阅读,不管是Web开发的初学者仍是入行已久的开发者都会在阅读本书的过程当中有所收获。
做者简介
Sau Sheong Chang 既是新加坡能源有限公司的数字技术总裁,也是Ruby 社区以及Go社区的活跃贡献者,著有《Go Web编程》《R和Ruby数据分析之旅》等4 部著做。
译者简介
黄健宏(huangz),一位1990年出生的计算机技术图书做译者,《Redis设计与实现》一书的做者,《Redis实战》一书的译者。除了已出版的两本做品以外,他还创做和翻译了《Go标准库中文文档》《Redis命令参考》《SICP解题集》等一系列开源文档。要了解关于黄健宏的更多信息,请访问他的我的主页http://huangz.me。
Go并发编程实战
本书首先介绍了Go语言的优秀特性、安装设置方法、工程结构、标准命令和工具、语法基础、数据类型以及流程控制方法,接着阐述了与多进程编程和多线程编程有关的知识,而后重点介绍了goroutine、channel以及Go提供的传统同步方法,最后经过一个完整实例——网络爬虫框架进一步阐述Go语言的哲学和理念,同时分享做者在多年编程生涯中的一些看法和感悟。
与上一版相比,本书不只基于Go 1.8对上一版进行了全面更新,并且更深刻地描绘了Go运行时系统的内部机理,而且大幅改进了示例代码。
本书适用于有必定计算机编程基础的从业者以及对Go语言编程感兴趣的爱好者,很是适合做为Go语言编程进阶教程。
做者
郝林,从业12年有余的软件工匠,国内知名的Go语言技术布道者,Go语言北京用户组和GoHackers社群的发起人和组织者,多套免费在线Go语言教程的做者,深信Go语言在人工智能时代和机器人时代也能大放异彩的科技信徒。