本书基于Go语言源码提炼出Go特性的实现原理,并配以大量图表和实例以通俗易懂的语言描述出来,包括常见数据结构实现原理(包括chan、slice、map、struct等),常见控制结构实现原理(包括defer、select、range、mutex等),Go协程、内存管理、反射等机制,Go 工具链指导及原理(包括单元测试、性能测试、依赖管理等)。另外,本书还包括由实际项目Bug复盘而来的案例分享,包括定时器资源泄露、语法糖陷阱等。本书还包含大量练习题目,甚至可以作为面试题目来源。
本书从实践出发讲解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语言也称为Golang,它出自计算机科学领域的三位巨匠Ken Thompson、Rob Pikeh和Robert Griesemer之手,在2009年由Google公司正式发布。Go语言是一种静态强类型、编译型、并发型及具有垃圾回收功能的开源编程语言。它的主要目标是“兼具Python等动态语言的开发速度和C/C++等编译型语言的性能与安全性”。Go语言语法简单,规则严谨。此外,Go语言拥有功能完善、质量可靠的标准库,借助这些标准库,可以快速开发基础程序,极大降低学习与开发成本。Go语言拥有完整的工具链,编译、格式化、错误检查功能和帮助文档及第三方工具包都很完善,可以保证代码正确稳定的运行。正因为Go语言具有如此众多的特性,它被誉为“21世纪的编程语言”,成为一种国际化的新语言。 《Go语言入门经典/计算机科学与技术丛书》由知名IT开发者周家安编著,内容通俗易懂、理论全面、实例
本书涵盖从Go语言入门到Go Web开发高手所需的核心知识、方法和技巧,共分4篇。 第1篇“Go语言入门”,介绍Go语言的基础语法,既使没有Go语言基础的读者也可以学习本书。 第2篇“Go Web基础入门”,包括3章:Go Web开发基础、接收和处理Go Web请求、用Go访问数据库。本篇能使读者快速掌握用Go语言进行Web开发的基础知识。 第3篇“Go Web高级应用”,包括4章:Go高级网络编程、Go文件处理、Go并发编程、Go RESTful API接口开发。本篇能使读者用Go语言快速开发各种Web应用。 第4篇“Go Web项目实战”,包括2章:【实战】开发一个B2C电子商务系统、【实战】用Docker部署Go Web应用。本篇通过实例介绍了开发一个B2C电子商务系统的全过程,包括开发商品展示、购物车、结算、支付等模块的详细讲解,让读者真正了解大型B2C电子商务系统的架构原理及实现方法,并开放了源代码;用D
本书采用“理论实例”的编写形式,通过大量的实例,并结合作者多年的一线开发实战经验,全面介绍了Go语言的语法及使用方法。全书秉承方便学习、易于理解、便于查询的理念编写而成,无论是想系统学习Go语言基础知识的初学者,还是想进阶提高的有经验开发人员,都能通过本书迅速掌握Go语言的各种基础语法和开发技巧。本书作者曾经与慕课网合作录制过相关视频课程,有丰富的视频制作经验,所以特意为本书重点内容精心录制了配套教学视频,这将极大地提升读者的学习效率,取得比同类图书更好的学习效果。另外,本书还免费提供了书中涉及的实例源代码,以方便读者学习。本书分为13章,主要介绍了Go语言的特性与环境搭建、基本语法与使用、容器(存储和组织数据的方式)、流程控制、函数、结构体、接口、包、并发、反射、编译与工具、Go程序开发