读《Go语言从入门到进阶实战》
作者:
| 更新日期:可以快速了解 go 语言语法,实战部分不推荐。
本文首发于公众号:天空的代码世界,微信号:tiankonguse
零、背景
去年开始从微信读书阅读《Go语言从入门到进阶实战》这本书,始终没读完。
过年的时候,终于把这本书读完了。
这本书前面 11 章节介绍语法与使用相关,第 12 章介绍 go语言的坑与技巧,第 13 章介绍作者开发的网络库。
作为一本入门书籍,面对一个初学者,直接介绍坑、技巧是不合适的,介绍网络库实战更是不合适的。
不过用来快速了解 go 的语法还是不错的。
这里简单的罗列下书中介绍的知识。
一、语法
第一章介绍怎么搭建 go 语言开发环境,编译运行程序。
第二章介绍变量、数据类型、类型转化、指针、变量生命周期、字符串、常量、类型别名知识点。
第三章介绍数组、切片slice、映射map、列表list。
第四章介绍 if、for、for range、switch、goto、break、continue语法。
第五章介绍函数的声明、函数变量、匿名函数、接口、闭包、可变参、defer、panic、recover语法。
第六章介绍结构体的定义、实例化、初始化、构造函数、方法、内嵌等。
第七章介绍接口的声明、与类型的关系与转换。
第八章介绍包。
第九章介绍并发,涉及协程 goroutine、通道 channel。
第十章介绍反射。
第十一章介绍编译与工具。
go build
go run
go install
go get
go test
go pprof
第十二章介绍坑和技巧。
经验1:协程有生命周期,小心会创建无数个协程导致内存爆掉。
经验2:尽量避免使用通道 channel,性能很差。
经验3:反射性能很差,有气死反射对象和反射函数的调用。
经验4:值为nil的接口与nil不相等,最常见的是 Error nil,大坑。
经验5:map 的 key 支持多值结构。
第十三章介绍实战,即通过作者封装的 TCP 网络库,实现一个聊天室。
三、最后
这本书在微信读书上可以读,在外面逛的时候,闲暇时间可以用来翻一下,学习写 Go 的语法,这点还是不错的。
加油,技术人。
《完》
-EOF-
本文公众号:天空的代码世界
个人微信号:tiankonguse
公众号ID:tiankonguse-code
本文首发于公众号:天空的代码世界,微信号:tiankonguse
如果你想留言,可以在微信里面关注公众号进行留言。