《Go程序设计语言中文版》百度网盘pdf最新全集下载:
链接:https://pan.baidu.com/s/1K2XHYlNbRyQMiBkckaPr7A
?pwd=0cii 提取码:0cii简介:本书由《C程序设计语言》的作者Kernighan和谷歌公司Go团队主管Alan Donovan联袂撰写,是学习Go语言程序设计的指南。本书共13章,主要内容包括:Go的基础知识、基本结构、
基本数据类型、复合数据类型、函数、方法、接口、goroutine、通道、共享变量的并发性、包、go工具、测试、反射等。
本书适合作为计算机相关专业的教材,也可供Go语言爱好者阅读
仅为个人阅读时遇到的困惑的理解
2021.6.16
《GO语言圣经》-《GO程序设计语言》
P3
在命令行中运行 go run main.go 123
会输出 123
在命令行中分别输入(注意空格)
(1) go run main.go 123
和
(2) go run main.go 1 2 3
(1)中输出结果
第一行是go命令的位置
第二行是for循环内的“一个参数”的结果
第三行是for循环外的最终结果
(2)中输出结果
第二行是for循环内“第一个参数”的结果
第三行是for循环内“第一个和第二个参数”的结果
以此类推。
(3)如果空格大于一个,仍会以一个空格输出
这时我才理解到书中所讲述的:
也就是以空格分隔代表新的一个参数。
使用go语言的好处: go语言的设计是务实的, go在针对并发上进行了优化, 并且支持大规模高并发, 又由于单一的码格式, 相比于其他语言更具有可读性, 在垃圾回收上比java和Python更有效, 因为他是和程序同时执行的.
1. 进程, 线程, 协程的区别, 协程的优势
2. 讲一下GMP模型(重点)
3. Go的GC, 混合写屏障(重点)
4. go的Slice和数组的区别, slice的扩容原理(重点)
5. 讲一下channel,实现原理(重点)
6. 讲一下Go的Map的实现原理, 是否线程安全, 如何实现安全(重点)
7. new 和 make 的区别
8. 说一下内存逃逸
9. 函数传指针和传值有什么区别
10. goroutine之间的通信方式
11. 测试是怎么做的(单元测试, 压力测试)
12. 堆和栈的区别