您的位置:首页 > 编程语言 > Go语言

Go语言圣经(中文版)读书笔记

2016-07-05 17:12 281 查看
首先感谢作者译者,让我们见识到了如此好的文章。

1. 入门

Hello,World

命令行参数

查找重复的行

GIF动画

获取URL

并发获取多个URL

WEB服务

本章重点

2.程序结构

命名

声明

变量

赋值

类型

包和文件

作用域

3.基础数据类型

整型

浮点数

复数

字符串

常量

4.复合数据类型

数组

Slice

Map

结构体

JSON

文本和HTML模板

5.函数

函数声明

递归

多返回值

错误

函数值

匿名函数

可变参数

Deferred函数

Panic异常

Recover捕获异常

6.方法

方法声明

基于指针对象的方法

通过嵌入结构体来扩展类型

方法值和方法表达式

示例:Bit数组

封装

7.接口

接口是合约

接口类型

实现接口的条件

flag.Value接口

接口值

sort.interface接口

http.Handler接口

error接口

示例:表达式求值

类型断言

基于类型断言识别错误类型

通过类型断言查询接口

类型分支

示例:基于标记的XML解码

补充几点

8.Goroutines和Channels

Goroutines

示例:并发的Clock服务

示例:并发的Echo服务

Channels

并发的循环

示例:并发的Web爬虫

基于select的多路复用

示例:并发的字典遍历

并发的退出

示例:聊天服务

9.基于共享变量的并发

竞争条件

sync.Mutex互斥锁

sync.RWMutex读写锁

内存同步

sync.Once初始化

竞争条件检测

示例:并发的非阻塞缓存

Goroutines和线程

10.包和工具

包简介

导入路径

包声明

导入声明

包的匿名导入

包和命名

工具

11.测试

go test

测试函数

测试覆盖率

基准测试

剖析

示例函数

12.反射

为何需要反射

reflect.Type和reflect.Value

Display递归打印

示例:编码S表达式

通过reflect.Value修改值

示例:解码S表达式

获取结构体字段表示

显示一个类型的方法集

几点忠告

13.底层编程

unsafe.Sizeof,Aligonf和Offsetof

unsafe.Pointer

示例:深度相等判断

通过cgo调用c代码

几点忠告

14.附录

附录A:原文勘误

附录B:作者译者

附录C:译文授权

附录D:其他语言
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  go语言 读书笔记