这本书从整体的写作风格来说,会以介绍 Go 语言特性为主,示例则尽量采用作者平常的实践,而不是一个没有太大实际意义的语法示范样例。
本书作者背景极强,许式伟为原金山WPS首席架构师、曾是盛大创新院研究员,目前是国内Go语言实践圈子公认的Go语言专家。参与本书写作的几位作者都是实际用Go语言开发的项目的开发人员,有较强的实战经验。
本书以介绍Go语言特性为主,示例则尽量采用作者开发团队平常的实践,内容涉及内存管理(堆和栈)、错误处理、OOP、并发编程等关键话题。 这本书面向的读者是所有打算用Go语言的开发者,主要包括目前使用C、C++、Java、C#的开发人员,甚至一些Python、PHP开发人员也可能转为 Go 程序员。
序 为什么我们需要一门新的语言?
第1章 初识Go语言
1.1 Go语言简史
1.2 语言特性
1.3 “Hello, world!”
1.4 编译环境
1.5 开发工具
1.6 工程管理
1.7 问题追踪和调试
1.8 如何寻求帮助
本章小结
第2章 顺序编程
2.1 变量、常量和类型
2.1.1 变量
2.1.2 常量
2.1.3 类型
2.2 流程控制
2.2.1 条件语句
2.2.2 选择语句
2.2.3 循环
2.2.4 跳转语句
2.3 函数
2.3.1 函数调用
2.3.2 不定参数
2.3.3 多返回值
2.3.4 匿名函数与闭包
2.4 错误处理
2.4.1 error接口
2.4.2 defer
2.4.3 panic和recover
本章小结
第3章 面向对象编程
3.1 类型系统
3.1.1 给类型添加方法
3.1.2 值语义和引用语义
3.2 结构体
3.2.1 初始化
3.2.2 匿名组合
3.2.3 成员可访问性
3.3 接口
3.3.1 其他语言中的接口
3.3.2 非侵入式接口
3.3.3 接口赋值
3.3.4 接口查询
3.3.5 类型查询
3.3.6 Any类型
本章小结
第4章 工程管理
4.1 Go命令行工具
4.2 代码风格
4.3 工程组织
4.4 单元测试
4.5 文档管理
4.6 工程构建
4.7 包的管理与分发
4.8 跨平台开发
4.8.1 Go语言的跨平台能力
4.8.2 交叉编译
4.8.3 Android支持
本章小结
第5章 并发编程
5.1 初识Goroutine
5.1.1 基本用法
5.1.2 Goroutine通信
5.2 Channel
5.2.1 基本用法
5.2.2 关闭
5.2.3 变量的传递
5.2.4 单向Channel
5.2.5 超时处理
5.3 多核并行化
5.4 同步机制
5.4.1 sync包简介
5.4.2 同步锁
5.4.3 Once类型
本章小结
第6章 网络编程
6.1 HTTP编程
6.1.1 客户端编程
6.1.2 开发HTTP服务器
6.2 JSON
6.2.1 JSON简介
6.2.2 编码
6.2.3 解码
6.2.4 未知类型的解码
6.2.5 流式读写
6.3 网站开发
6.3.1 一个最简单的网站
6.3.2 开发一个相册网站
6.3.2.1 新建工程
6.3.2.2 实现网络服务
6.3.2.3 网页模板渲染
6.3.2.4 缓存
6.3.2.5 错误处理
6.3.2.6 防止程序崩溃
6.3.2.7 资源分离
6.3.2.8 重构
6.4 更多资源
本章小结
第7章 进阶话题
7.1 Go语言中的内存管理
7.2 反射
7.3 语言交互性CGO
7.4 链接符号
7.5 Goroutine实现机制
7.6 接口的奥秘
本章小结
第8章 开发工具
8.1 Go语言开发工具
8.2 gEdit
8.3 Goclipse - 使用Eclipse开发和调试Go程序
8.4 VIM
8.5 Nodepad++,Windows上的Go开发环境搭建
8.6 GolangIDE
本章小结
附录 Go语言包参考
本书是无线通信方面的一部新作。该书在材料取舍、内容组织和讲授方式方面均具有鲜明特色。书中主要针对无线网络的物理层,阐述了
《jQuery 权威指南》内容简介:《jQuery权威指南》配套源代码下载:http://download.csdn.net/source/2960801 由国...
《诗经绘》内容简介:《诗经》,中国诗歌的源头。2500年来,它在诉说些什么? “有狐绥绥,在彼淇梁。心之忧矣,之子无裳”是姑娘爱
《小学生同步作文(一、二年级)》内容简介:“名师教你写作文·思维导图系列”丛书是一套集思维导图、形象记忆图、趣味漫画为一体
《德古拉》内容简介:德古拉,历史上著名的吸血鬼。自爱尔兰著名小说家布莱姆·斯托克出版《德古拉》以来,已经在全世界享有极高的
《实现技术创新的TRIZ诀窍:40个创新原理》是阿奇舒勒用来介绍如何使用40个创新原理解决技术矛盾的。本版保留了原著的核心部分和尤
信息可视化致力于创建那些以直观方式传达抽抽象信息的手段和方法。可视化的表达形式与交互技术则是利用人类眼睛通往心灵深处的广
《Python深度强化学习:基于Chainer和OpenAI Gym》内容简介:近年来,机器学习受到了人们的广泛关注。本书面向普通大众,指导读者在
《深入RabbitMQ》内容简介:本书对RabbitMQ这一业界主流的消息中间件做了全面介绍,给出了如何使用RabbitMQ构建消息通信系统的方法
《人民币汇率制度选择的政治和经济分析》内容简介:本书分为三个部分。第一部分给出了人民币汇率政治经济学研究的基本架构。第二部
TheHyperTextTransferProtocol,orHTTP,isthebackboneoftheWorldWideWeb.HTTPisthelang...
《二十五史艺文经籍志考补萃编续刊(第二卷)》内容简介:《二十五史艺文经籍志考补萃编》2011至2014年由清华大学出版社陆续出版,
《美学散步》内容简介:宗白华先生(1897—1986)是中国现代美学的先行者和开拓者,被誉为“融贯中西艺术理论的一代美学大师”,他
《觅我游踪:汪曾祺记游》内容简介:本书精选作者多地的行旅、记游散文四十余篇,并配以汪曾祺亲绘插图十余幅,以记游为线索,立体
《个人发起型非营利组织研究》内容简介:本书讲了一个学术版的故事,其在一定理论框架下的叙事,呈现了一个由个人发起的非营利组织
《人人都要会理财》内容简介:从投资理财应有的理念与心态、各类投资品的特性及如何挑选适合的投资品、如何控制风险、如何选择理财
《超级账本HyperLedger Fabric区块链开发实战》内容简介:本书围绕区块链的业务场景,对HyperLedger Fabric区块链进行实战式讲解。
《JavaScript实战》内容简介:本书从最流行的前端应用场景出发,结合当下热门技术(AJAX、jQueryUI、瀑布流、HTML5、Node.js、CSS3
《大学生创业价值观教育研究》内容简介:开展行之有效的创业价值观教育,更好地引导民众将先进的创业理念内化为个体的思维方式、外
《预防医学实习和学习指导(第2版)》内容简介:本书分为实习和复习思考题两篇。实习篇分为5个部分,即医学统计学实习、流行病学实