这本书从整体的写作风格来说,会以介绍 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语言包参考
《谁主沉浮》内容简介:本书认为移动互联网是传统PC互联网的延伸,未来移动互联网的内涵还将继续扩大,将延伸到各种移动终端的载体
《零基础学电脑从入门到精通:视频自学版》内容简介:本书是专为新手编写的电脑操作与应用入门教程,精选了满足日常生活和工作需求
在世界各个危险的海路上航行,需要可靠的设备,磁罗盘因此应运而生。磁罗盘是人类史上最重要的航海装置,本书的目的即是呈现这段
Thedefactostandard-amust-haveforallLISPprogrammers.Inthisgreatlyexpandededitiono...
《绞刑架下的报告:增订版》内容简介:《绞刑架下的报告》这部纪实文学作品,是伏契克在纳粹德国盖世太保监狱里万分艰难的处境中,
Arduino不仅仅是全球最流行的开源硬件,也是一个优秀的硬件开发平台,更是硬件开发的趋势。Arduino简单的开发方式使得开发者更关
《交换技术》系统介绍了交换技术的基本概念和工作原理,着重讨论当前通信网各种基本的交换技术,以循序渐进的方式和比较分析的观
本书对Photoshop中最重要的通道、混合模式、图层、蒙版做了深入剖析,并列举了大量相关实例,有助于读者更深入理解和把握Photosh
《英语应该这样学!》内容简介:本书从英语学习的五大板块——发音、单词、语法、语感、习题——入手,逐一分析了中国英语学习者(
佐藤可士和(KashiwaSato),艺术指导,创意指导。1965年生于东京。1989年毕业于多摩艺术大学,毕业后进入日本知名广告公司“博报
《新税法下企业纳税筹划(第7版)》内容简介:本书根据最新的税收政策论述了企业所得税、个人所得税、增值税、消费税等主要税种的纳
“双11”,诞生于杭州,成长于阿里,风行于互联网,成就于新经济,贡献于全世界。从2009年淘宝商城起,双11已历经八年。每年的双
Amongthetestsyouperformonwebapplications,securitytestingisperhapsthemostimportan...
《通信类毕业生求职宝典》找一份让自己满意且适合自身发展的工作对于即将走向社会的同学们而言尤为重要。通信类专业毕业生知识覆
中文版Photoshop CS6平面设计从入门到精通-全彩超值版 本书特色 本书是入门级读者快速、全面掌握中文版photoshop cs6平面设计的**参考书。...
ThisbookwillintroduceyoutothePythonprogramminglanguage.It’saimedatbeginningprogr...
《以房养老:理念与模式》内容简介:以房养老理论与建立在其上的反向抵押贷款的研究,前者是一种理念,一种横跨房地产、金融保险、
《丝绸之路上的科学技术》内容简介:本书从数学、天文学、医学、物理学、建筑学、机械等方面,选择历史上丝绸之路沿线国家和地区的
《电商密码》内容简介:本书以真实的跨境电商平台全案为实践基础,结合现今电商行业的特点和需求,从电商平台运营者的角度对电商运
Series60智能手机开发平台正掀起新一轮的移动服务浪潮。超过60%的手机生产商获得了Series60平台的授权。Series60移动应用开发平