<sub id="97ppf"></sub>

      <address id="97ppf"></address>

              <address id="97ppf"></address>

              帮助有志向的年轻人通过努力学习获得体面的工作和生活

              全国免费咨询电话 : 400-609-2893

              热门8周快速入门Go语言(第1版)

              本系列书籍由老男孩教育与路飞学城讲师撰写而成,依托讲师丰富的授课经验,致力于通俗易懂的阐述Go语言的核心基础内容,是十分适宜入门阅读的书籍。
              • 书籍作者:李文周
              • 出版社 :老男孩内部出版
              • 出版时间:2019年6月4日
              • 书籍开本:16开
              • 书籍包装:平装
              • 是否套装:
              • 书籍页数:173页
              • 书号ISBN:----

              学生专享:¥0.000折¥0.00

              老男孩 Linux云计算运维 就业班正在火热招生,坐席有限,【立即抢占报名名额】

              内容简介:

                本书主要针对Go语言初学者快速入门Go语言,全书分为14章三大部分。 第一部分:其中第1章介绍了Go语言的发展历史,并详细介绍了搭建Go语言开发环境的步骤。 第2章到第10章介绍了Go语言的基础语法,第11章介绍了Go语言赖以成名的并发编程的内容。 第二部分:第12章介绍了网络编程部分的内容,自己动手实现一个HTTP Server和HTTP Client。第13章介绍了Go语言中如何进行单元测试。 第三部分:第14章重点介绍了Go语言常用的标准库如fmt、time、flag、文件操作等标准库的用法。

              作者简介:

                李文周,老男孩教育Go学科负责人 多年一线互联网开发经验,前搜狗高级开发工程师。擅长领域:Go、C、Python、JavaScript、小程序等。授课经验丰富,风趣幽默,可能是老男孩教育最严谨的老师。

              书籍目录:

              前言 1

              目录 2

              1.1 Go语言简介 14

              1.1.1 Go语言的发展历史 14

              1.1.2 Go语言的特点 14

              1.1.3 Go语言的应用 14

              1.2 安装Go语言开发工具包 15

              1.2.1 下载 15

              1.2.2 安装 15

              1.3 配置GOPATH 19

              1.4 Go语言项目结构 20

              1.5 第一个Go语言程序 21

              1.5.1 Go语言开发编辑器 21

              1.5.2 安装VSCode 21

              1.5.3 Hello world 23

              1.6 本章小结 24

              1.7 练习题 25

              第2章 Go语言基础语法 26

              2.1 Go语言语法规则 26

              2.1.1 Go语言代码结构 26

              2.1.2 Go语言语法特点 26

              2.2 标识符和关键字 27

              2.2.1 标识符 27

              2.2.2 关键字 27

              2.3 变量 27

              2.3.1 变量的来历 27

              2.3.2 变量声明 27

              2.3.3 变量的初始化 28

              2.4 常量 29

              2.4.1 常量声明 29

              2.4.2 iota 30

              2.5 本章小结 31

              第3章 基本数据类型与运算符 32

              3.1 基本数据类型 32

              3.1.1 整型 32

              3.1.2 浮点型 33

              3.1.3 复数 33

              3.1.4 布尔值 33

              3.1.5 字符串 34

              3.1.6 byte和rune类型 35

              3.2 运算符 36

              3.2.1 算数运算符 36

              3.2.2 关系运算符 37

              3.2.3 逻辑运算符 37

              3.2.4 位运算符 38

              3.2.5 赋值运算符 38

              3.3 本章小结 39

              3.4 习题 39

              第4章 流程控制 40

              4.1 if条件判断 40

              4.1.1 if else基本结构 40

              4.1.2 if判断特殊写法 40

              4.2 for循环 41

              4.2.1 for循环基本格式 41

              4.2.2 无限循环 42

              4.2.3 for range循环 42

              4.2.4 break跳出循环 42

              4.2.5 continue继续下次循环 43

              4.3 switch 43

              4.4 goto label 45

              4.5 break label 46

              4.6 continue label 46

              4.7 本章小结 46

              4.8 习题 47

              第5章 复合数据类型 48

              5.1 Array 48

              5.1.1 Array的定义 48

              5.1.2 数组的初始化 48

              5.1.3 访问数组的元素 49

              5.1.4 数组的遍历 49

              5.1.5 多维数组 50

              5.1.6 数组是值类型 51

              5.2 Slice 51

              5.2.1 切片的定义 51

              5.2.2 基于数组得到切片 52

              5.2.3 make函数构造切片 52

              5.2.4 切片的本质 53

              5.2.5 切片不能直接比较 54

              5.2.6 切片的拷贝赋值 54

              5.2.7 切片的遍历 54

              5.2.8 使用append给切片追加元素 54

              5.2.9 使用copy复制切片 56

              5.2.10 删除切片的元素 56

              5.3 Map 57

              5.3.1 Map定义 57

              5.3.2 map基本使用 57

              5.3.3 判断键是否存在 57

              5.3.4 map的遍历 58

              5.3.5 使用delete函数删除键值对 58

              5.4 本章小结 60

              5.5 习题 60

              第6章 函数 62

              6.1 函数 62

              6.1.1 函数定义 62

              6.1.2 函数调用 62

              6.1.3 函数参数 63

              6.1.4 函数返回值 64

              6.1.5 defer语句 64

              6.2 函数进阶 65

              6.2.1 变量作用域 65

              6.2.2 函数作为变量 66

              6.2.3 匿名函数 67

              6.3 闭包 67

              6.3.1 闭包的定义 67

              6.3.2 闭包的使用 67

              6.4 常用内置函数 68

              6.4.1 panic和recover 68

              6.5 本章小结 70

              6.6 习题 70

              第7章 指针和包 71

              7.1 指针 71

              7.1.1 内存地址和指针类型 71

              7.1.2 指针取值 71

              7.2 new和make 72

              7.2.1 new 73

              7.2.2 make 73

              7.3 包 74

              7.3.1 包的定义 74

              7.3.2 标识符的可见性 74

              7.3.3 包的导入 75

              7.3.4 自定义包名 75

              7.3.5 init初始化函数 75

              7.4 本章小结 76

              7.5 习题 77

              第8章 结构体 78

              8.1 结构体 78

              8.1.1 结构体定义 78

              8.1.2 结构体实例化 79

              8.1.3 匿名结构体 79

              8.1.4 结构体指针 79

              8.1.5 结构体初始化 80

              8.1.6 构造函数 81

              8.2 方法和接收者 81

              8.2.1 方法 81

              8.2.2 接收者 82

              8.2.3 任意类型添加方法 83

              8.3 结构体嵌套 84

              8.3.1 结构体匿名字段 84

              8.3.2 嵌套结构体 84

              8.3.3 结构体继承 86

              8.4 结构体与JSON 87

              8.4.1 结构体字段的可见性 87

              8.4.2 结构体与JSON 87

              8.4.3 结构体标签 88

              8.5 本章小结 89

              8.6 习题 89

              第9章 接口 90

              9.1 接口类型 90

              9.1.1 为什么要有接口 90

              9.1.2 接口的定义 91

              9.1.3 接口的实现 91

              9.1.4 值接收者和指针接收者的区别 92

              9.1.5 类型与接口的关系 93

              9.1.6 接口的嵌套 95

              9.2 空接口 95

              9.2.1 空接口的定义 95

              9.2.2 空接口的应用 96

              9.2.3 类型断言 97

              9.3 本章小结 97

              9.4 习题 98

              第10章 反射 99

              10.1 反射介绍 99

              10.1.1 为什么要使用反射 99

              10.2 reflect 99

              10.2.1 reflect.Type 100

              10.2.2 Type和Kind 100

              10.2.3 reflect.ValueOf 102

              10.2.4 结构体反射 103

              10.3 反射是把双刃剑 105

              10.4 本章小结 105

              10.5 习题 106

              第11章 并发 107

              11.1 什么是并发 107

              11.1.1 并发与并行的区别 107

              11.1.2 Go语言中的并发 107

              11.2 goroutine 107

              11.2.1 使用goroutine 107

              11.2.2 sync.WaitGroup 108

              11.2.3 启动多个goroutine 109

              11.3 goroutine与OS线程 109

              11.3.1 goroutine使用可变的栈 109

              11.3.2 goroutine由go的运行时调度 110

              11.3.3 GOMAXPROCS 110

              11.4 channel 111

              11.4.1 channel介绍 111

              11.4.2 声明channel 111

              11.4.3 初始化channel 111

              11.4.4 channel操作 112

              11.4.5 无缓冲通道 112

              11.4.6 有缓冲通道 113

              11.4.7 循环接收值 113

              11.4.8 单向通道 114

              11.4.9 select多路复用 115

              11.5 并发安全和锁 116

              11.5.1 互斥锁 116

              11.5.2 读写互斥锁 117

              11.5.3 sync.Once 118

              11.5.4 Sync.Map 119

              11.6 本章小结 121

              11.7 习题 121

              第12章 网络编程 122

              12.1 互联网协议 122

              12.1.1 互联网分层模型 122

              12.1.2 物理层 123

              12.1.3 数据链路层 123

              12.1.4 网络层 123

              12.1.5 传输层 124

              12.1.6 应用层 124

              12.2 socket编程 125

              12.2.1 socket图解 125

              12.3 Go语言实现TCP通信 126

              12.3.1 TCP协议 126

              12.3.2 TCP服务端 126

              12.3.3 TCP客户端 127

              12.4 Go语言实现UDP通信 128

              12.4.1 UDP协议 128

              12.4.2 UDP服务端 128

              12.4.3 UDP客户端 129

              12.5 Go语言实现HTTP通信 130

              12.5.1 HTTP协议 130

              12.5.2 HTTP客户端 130

              12.5.3 HTTP服务端 131

              12.6 本章小结 131

              12.7 习题 132

              13 测试 133

              13.1 go test 133

              13.2 测试函数 133

              13.2.1 测试函数格式 133

              13.2.2 测试示例 134

              13.2.3 测试组 137

              13.2.4 子测试 138

              13.2.5 测试覆盖率 140

              13.3 基准测试 141

              13.3.1 基准测试函数格式 141

              13.3.2 基准测试示例 142

              13.3.3 性能比较函数 143

              13.3.4 重置时间 145

              13.3.5 并行测试 145

              13.4 Setup与TearDown 146

              13.4.1 TestMain 146

              13.4.2 子测试的Setup与Teardown 146

              13.5 示例函数 148

              13.5.1 示例函数格式 148

              13.5.2 示例函数示例 148

              13.6 本章小结 149

              13.7 习题 149

              14 常用标准库 150

              14.1 fmt 150

              14.1.1 输出内容 150

              14.1.2 格式化占位符 151

              14.1.3 获取输入 155

              14.2 time 157

              14.2.1 时间类型 157

              14.2.2 时间戳 158

              14.2.3 时间间隔 158

              14.2.4 时间操作 159

              14.2.5 定时器 159

              14.2.6 时间格式化 159

              14.3 strconv 160

              14.3.1 string与int类型转换 160

              14.3.2 Parse系列函数 160

              14.3.3 Format系列函数 161

              14.4 flag 162

              14.4.1 os.Args 162

              14.4.2 flag参数类型 163

              14.4.3 定义flag参数 163

              14.4.4 解析flag参数 163

              14.4.5 flag包其他函数 164

              14.4.6 完整示例 164

              14.5 log 165

              14.5.1 使用logger 165

              14.5.2 配置logger 166

              14.5.3 配置日志前缀 166

              14.5.4 配置日志输出位置 167

              14.5.5 创建logger 167

              14.6 文件操作 168

              14.6.1 打开和关闭文件 168

              14.6.2 读取文件 168

              14.6.3 bufio 170

              14.6.4 ioutil 170

              14.6.5 打开文件 171

              14.6.6 Write和WriteString 171

              14.6.7 bufio.NewWriter 172

              14.6.8 ioutil.WriteFile 172

              14.7 本章小结 172

              14.8 习题 172

              是时候去做成一件事了 174

              书籍前言:

                我与Go语言

                我接触Go语言是在2016年的时候,那时候我还在搜狗上班,当时我在工作中还是写Python和JavaScript为主。一个偶然的机会接触到Go语言,它作为一门静态编译型的语言,编译之后几乎无依赖的特点,深深地吸引了我,当时一下子就觉着这才是我想要的语言。

                后来就开始慢慢学习Go语言了,并且尝试着去编写一些业务代码。当时网上还没有很多关于Go语言的学习资料,我记得我是在github上找到了一些网友自发翻译的Go语言圣经,我拿着PDF去学院路的一家打印店花了20多块钱打印了出来,从那以后上下班的地铁上都是这本书陪着我。

                后面我又在网上看了无闻的教学视频,我记得有两个系列一个是Go语言基础,还有名库讲解,我也学到了很多。感谢无闻大大。

                现在Go语言及其生态的发展已经越来越完善,越来越多的公司也选择Go语言作为主开发语言,Go语言之所以能发展这么快,肯定离不开无数热心的Gopher为Go社区做的贡献。工作之余我也开始尝试写一些Go语言的博客,录制一些Go语言的视频教程,我也想给Go社区做一些自己力所能及的贡献。

                本书是我将之前发布在博客上的文章重新整理而成,希望能帮助到更多的Go语言初学者。但由于水平有限、并且时间仓促,书中难免有错误之处,如能得到您的宝贵建议,将感激不尽。

                本书示例代码及习题答案请加QQ群:745470832索取。

              990990藏宝阁特马诗今晚六开彩开奖结果 开奖结果查询118图库天下彩天空彩免费大全香港蓝月亮精选资料六合宝典 浪卡子县| 朝阳区| 桦南县| 临澧县| 霍林郭勒市| 肥城市| 虎林市| 项城市| 宁波市| 景洪市| 泰来县| 庐江县| 兴国县| 新巴尔虎左旗| 中江县| 福州市| 阿合奇县| 会理县| 卢湾区| 邻水| 毕节市| 台东市| 双牌县| 依安县| 彭泽县| 凤庆县| 葵青区| 崇州市| 汝南县| 秭归县| 合川市| 高青县| 吉安县| 宣化县| 施秉县| 易门县| 柘荣县| 阿图什市| 墨脱县| 大港区| 乳源| 鹤庆县| 临漳县| 金湖县| 敖汉旗| 汉中市| 鞍山市| 丰台区| 得荣县| 防城港市| 喀喇| 长宁县| 河北区| 鄂伦春自治旗| 扎赉特旗| 油尖旺区| 竹溪县| 台江县| 定日县| 临清市| 平山县| 马边| 武冈市| 鲁甸县| 泽普县| 营口市| 五原县| 河北区| 枝江市| 舞钢市| 全州县| 鹿邑县| 山西省| 呈贡县| 涿鹿县| 内江市| 秀山| 庆城县| 克什克腾旗| 华阴市| 南投市| 尼勒克县| 吴堡县| 噶尔县| 长沙县| 宜章县| 兰溪市| 牙克石市| 慈利县| 咸宁市| 甘孜| 嘉峪关市| 米林县| 汤阴县| 共和县| 鸡西市| 遂平县| 安乡县| 衡阳市| 丰城市| 富宁县| 正蓝旗| 临泽县| 罗定市| 德州市| 大宁县| 汝城县| 花莲县| 新泰市| 桑植县| 屏山县| 崇信县| 勃利县| 木兰县| 双城市| 建昌县| 靖边县| 濮阳县| 鄂尔多斯市| 河曲县| 伊川县| 玛曲县| 珠海市| 改则县| 北流市| 遵义市| 五峰| 丰都县| 浪卡子县| 东莞市| 错那县| 利川市| 云霄县| 镇原县| 浠水县| 上高县| 遂昌县| 绥德县| 达拉特旗| 南郑县| 庆阳市| 宁海县| 富宁县| 兰坪| 银川市| 象州县| 双牌县| 萍乡市| 江口县| 萍乡市| 温州市| 孟村| 东乡| 久治县| 呼和浩特市| 儋州市| 麻栗坡县| 陇南市| 大洼县| 嘉兴市| 霍山县| 博兴县| 泌阳县| 翼城县| 库尔勒市| 三穗县| 柯坪县| 三亚市| 宜都市| 六枝特区| 汽车| 彰化市| 阿尔山市| 柳河县| 大竹县| 湖南省| 永顺县| 云梦县| 普定县| 金坛市| 绥棱县| 两当县| 新余市| 庆阳市| 齐河县| 龙山县| 安多县| 阜康市| 时尚| 年辖:市辖区| 大荔县| 本溪| 佛冈县| 建阳市| 通河县| 南郑县| 邓州市| 佛学| 凉城县| 吉安县| 广灵县| 炎陵县| 河北省| 双城市| 东阳市| 饶河县| 徐水县| 贺兰县| 阆中市| 定南县| 盐山县| 图木舒克市| 朝阳区| 平乐县| 尼玛县| 襄汾县| 松阳县| 吴川市| 丁青县| 教育| 潞西市| 柏乡县| 同心县| 益阳市| 泰和县| 浙江省| 林口县| 沙田区| 山东省| 栾川县| 通州区| 鹿邑县| 昂仁县| 高清| 阿克陶县| 迁安市| 武威市| 四平市| 科技| 台江县| 集安市| 新绛县| 益阳市| 东山县| 阿拉尔市| 建阳市| 巩留县| 新邵县| 扎囊县| 策勒县| 勃利县| 阳谷县| 东源县| 开鲁县| 九台市| 阿城市| 竹北市| 华容县| 阳新县| 苏尼特右旗| 梅河口市| 攀枝花市| 东海县| 大港区| 龙泉市| 仪陇县| 新泰市| 平远县| 聂拉木县| 阜康市| 三门县| 汝州市| 章丘市| 大港区| 和田县| 富宁县| 田林县| 大冶市| 平乡县| 光山县| 玛多县| 五莲县| 个旧市| 朔州市| 休宁县| 鹤壁市| 高密市| 股票| 邯郸县| 镇宁| 绍兴市| 印江| 齐齐哈尔市| 辽阳市| 金溪县| 文安县| 辉县市| 慈溪市| 宝鸡市| 寿宁县| 大渡口区| 沙雅县| 宣恩县| 藁城市| 鲜城| 和田县| 成都市| 曲松县| 乐山市| 凤冈县| 勃利县| 青铜峡市| 清徐县| 宁夏| 齐河县| 平湖市| 冕宁县| 乌鲁木齐市| 利辛县| 花垣县| 南充市| 吴旗县| 建德市| 永济市| 新和县| 保亭| 辽源市| 特克斯县| 壤塘县| 镇康县| 深州市| 马鞍山市| 平果县| 原平市| 大埔县| 四川省| 沽源县| 弋阳县| 宁波市| 绥芬河市| 鄂尔多斯市| 墨脱县| 曲麻莱县| 岱山县| 黔南| 宜兰县| 齐齐哈尔市| 乌什县| 郯城县| 通江县| 轮台县| 阳高县| 龙江县| 杭锦后旗| 桃园市| 泰顺县| 巴彦县| 阜康市| 拜城县| 吉水县| 碌曲县| 海阳市| 枣强县| 湘潭市| 阜新| 湖州市| 鹤峰县| 旬阳县| 玉树县| 根河市| 开封县| 武陟县| 明光市| 穆棱市| 榆树市| 河东区| 南木林县| 民权县| 通化县| 华容县| 镇坪县| 夏津县| 名山县| 九龙县| 日喀则市| 镇沅| 额济纳旗| 永春县| 万年县| 黄山市| 马鞍山市| 鹿邑县| 定南县| 华池县| 南漳县| 武安市| 龙陵县| 揭东县| 二手房| 汝阳县| 民权县| 英吉沙县| 磐石市| 台中市| 明光市| 博兴县| 大庆市| 兴隆县| 志丹县| 确山县| 嘉荫县| 若尔盖县| 通化县| 灵台县| 绥芬河市| 衡阳县| 西城区| 方城县| 始兴县| 平远县| 石家庄市| 蚌埠市| 陆河县| 莱阳市| 辽宁省| 北京市| 平远县| 宁波市| 盘锦市| 阳江市| 塔城市| 嘉善县| 黄石市| 阆中市| 镇坪县| 诸暨市| 大庆市| 呼伦贝尔市| 麻城市| 荣成市| 卢湾区| 台中县| 永胜县| 惠东县| 桦川县| 察隅县| 宿州市| 福贡县| 武安市| 嘉善县| 麻城市| 延川县| 平罗县| 通道| 呼和浩特市| 定日县| 新竹县| 兴海县| 垫江县| 寻乌县| 瑞昌市| 清水河县| 伊金霍洛旗| 辽阳县| 宜兰市| 罗山县| 博湖县| 进贤县| 长沙县| 龙陵县| 新营市| 汝南县| 沾化县| 赣州市| 南康市| 方正县| 洛南县| 东至县| 双江| 玉山县| 措勤县| 怀安县| 万年县| 西昌市| 佳木斯市| 防城港市| 临西县| 东台市| 罗江县| 惠水县| 潼南县| 五华县| 安阳市| 阜阳市| 磐安县| 遵化市| 南丰县| 礼泉县| 浦东新区| 靖边县| 宁陵县| 渝中区| 石家庄市| 新建县| 台北市| 久治县| 台江县| 聂拉木县| 宜州市| 沐川县| 大宁县| 略阳县| 奉新县| 侯马市| 左贡县| 石狮市| 安康市| 灯塔市| 额敏县| 蒙城县| 嘉禾县| 咸阳市| 山丹县| 米林县| 贞丰县| 息烽县| 青川县| 开平市| 公安县| 苏尼特右旗| 永和县| 白水县| 九寨沟县| 遂川县| 南昌县| 沙湾县| 扬州市| 浏阳市| 旬阳县| 夏津县| 思茅市| 同心县| 宽城| 平利县| 甘谷县| 广南县| 沐川县| 赤壁市| 句容市| 盐山县| 中山市| 静乐县| 黄石市| 石柱| 青冈县| 永顺县| 高台县| 泰兴市| 南昌县| 彭泽县| 咸丰县| 芦溪县| 克山县| 平陆县| 修水县| 武强县| 屏边| 揭西县| 长白| 南汇区| 都匀市| 肃南| 房产| 海阳市| 水富县| 馆陶县| 北票市| 科尔| 长子县| 交口县| 客服| 灌阳县| 宁乡县| 青阳县| 汶川县| 定襄县| 井陉县| 宁都县| 香格里拉县| 休宁县| 梁山县| 日土县| 松江区| 滕州市| 博乐市| 太保市| 大港区| 白朗县| 赤壁市| 光山县| 阿拉善盟| 渭源县| 鹤山市| 孟津县| 略阳县| 新密市| 静海县| 惠东县| 宁夏| 客服| 汾西县| 嘉善县| 安义县| 竹山县| 弋阳县| http://www.ibcqwh.fit http://wap.bm1961lixitz.fit http://www.ldwmiq.fit http://www.napphw.fit http://wap.xkzmfk.fit http://m.dmhhki.fit http://wap.hdxnvn.fit http://wap.kbkhug.fit http://oocjdx.fit http://wap.atsapr.fit http://wap.eezedq.fit http://wap.dmkqzl.fit http://wap.ggjuzc.fit http://m.esoekn.fit http://wap.cysikc.fit http://m.khowgx.fit http://m.hmliqc.fit http://www.lvbror.fit