Go语言编程入门与实战技巧

Go语言编程入门与实战技巧

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

Go语言入门教程,讲解基础知识、并发编程及网络编程,实用性强,适合新手。

内容简介

本书以Go语言程序设计入门为主,深度讲解Go语言基础知识,包括基本类型、程序结构、函数、流程控制、流程控制等。之后结合Go的源码解释了Go的包概念,介绍结构体与方法、接口与反射的应用。在此基础上,拓展讲解了并发编程和网络编程,并详细讲解了常见的标准库实战技巧。本书能够帮助您快速入门Go语言程序设计,深入了解Go语言工作机制。本书侧重讲解Go语言的入门知识点,帮助读者接触Go语言的世界。同时,本书还结合实战技巧,让读者在学习过程中接触到实际的开发细节。本书实用性强,是面向新手的入门作品,可以为广大入门读者参考借鉴。本书全文使用Go最新版本(Go 1.9+)讲解。

章节目录

封面

版权页

前言

目录

第1章 认识Go语言

1.1 Go语言简介

1.1.1 Go语言简史

1.1.2 Go语言特性

1.1.3 谁适合使用Go语言

1.2 Go语言的开发环境部署

1.2.1 Go语言环境变量

1.2.2 在Linux上安装Go语言环境

1.2.3 在Mac OS上安装Go语言环境

1.2.4 在Windows上安装Go语言环境

1.3 Go语言的基本命令及使用

1.3.1 GOROOT结构

1.3.2 GOPATH结构

1.3.3 Go语言命令行参数

1.3.4 第一个Go语言程序

1.4 Go语言的开发工具

1.4.1 Code/Atom

1.4.2 VIM-Go

1.4.3 Gogland

1.4.4 LiteIDE

1.4.5 Cloud IDE

1.5 本章小结

第2章 程序结构

2.1 Go语言程序元素

2.1.1 标识符

2.1.2 关键字

2.1.3 字面量

2.1.4 分隔符

2.1.5 运算符

2.1.6 注释

2.2 Go语言基本概念

2.2.1 常量

2.2.2 变量

2.3 本章小结

第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.4 布尔型

3.4.1 布尔型的表示

3.4.2 布尔型的运算

3.5 基本数据类型的扩展

3.5.1 强制类型转换

3.5.2 自定义类型

3.5.3 类型别名

3.5.4 指针

3.6 本章小结

第4章 流程控制

4.1 条件语句

4.1.1 if判断

4.1.2 if-else判断

4.1.3 else-if判断

4.1.4 初始化子语句

4.2 选择语句

4.2.1 switch语句

4.2.2 switch初始化语句

4.2.3 select语句

4.3 循环语句

4.3.1 for的子语句

4.3.2 range子语句

4.4 延迟语句

4.5 标签

4.5.1 break

4.5.2 continue

4.5.3 goto

4.6 本章小结

第5章 函数

5.1 认识函数

5.1.1 函数的声明

5.1.2 函数的参数

5.1.3 函数的返回值

5.2 函数的基础

5.2.1 多返回值

5.2.2 函数作为参数

5.2.3 函数作为类型

5.2.4 可变参数

5.2.5 匿名函数与闭包

5.2.6 递归函数

5.2.7 内置函数

5.3 函数进阶

5.3.1 参数传递机制

5.3.2 defer与跟踪

5.3.3 错误与恢复

5.4 本章小结

第6章 复合数据类型

6.1 数组

6.1.1 声明数组

6.1.2 访问与修改

6.1.3 多维数组

6.1.4 将数组传递给函数

6.2 切片

6.2.1 创建数组切片

6.2.2 切片的使用

6.2.3 多维切片

6.2.4 将切片传递给函数

6.3 映射

6.3.1 映射的实现

6.3.2 映射的创建

6.3.3 映射的使用

6.3.4 将映射传递给函数

6.4 本章小结

第7章 包

7.1 包的基础

7.1.1 包的结构

7.1.2 包的导入

7.1.3 包的使用

7.1.4 Go语言工具箱

7.2 自定义包

7.2.1 包的制作

7.2.2 特定平台的代码

7.2.3 godoc生成文档

7.2.4 包的打包与发布

7.2.5 自定义包的导入

7.3 本章小结

第8章 结构体与方法

8.1 结构体

8.1.1 结构体定义

8.1.2 结构体使用

8.1.3 带标签的结构体

8.1.4 匿名字段和内嵌结构体

8.2 类型系统

8.2.1 用户自定义类型

8.2.2 值语义和引用语义

8.3 方法

8.3.1 方法声明

8.3.2 为类型添加方法

8.3.3 工厂方法创建结构体

8.3.4 基于指针对象的方法

8.3.5 方法值和方法表达式

8.3.6 方法和未导出字段

8.3.7 嵌入类型的方法和继承

8.4 本章小结

第9章 接口与反射

9.1 接口

9.1.1 接口是什么

9.1.2 接口类型与约定

9.1.3 接口实现

9.1.4 嵌套接口

9.1.5 接口赋值

9.1.6 接口查询

9.1.7 接口组合

9.2 反射

9.2.1 方法和类型的反射

9.2.2 通过反射修改设置值

9.2.3 反射结构

9.2.4 Printf和反射

9.3 本章小结

第10章 并发编程

10.1 并发编程基础

10.1.1 并发与并行

10.1.2 指定使用核心数

10.2 协程(goroutine)

10.2.1 协程基础

10.2.2 协程间通信

10.3 通道(channel)

10.3.1 基本语法

10.3.2 select

10.3.3 缓冲机制

10.3.4 超时和计时器

10.3.5 channel的传递

10.3.6 单向channel

10.3.7 关闭channel

10.4 并发进阶

10.4.1 多核并行化

10.4.2 协程同步

10.4.3 协程和恢复

10.5 本章小结

第11章 网络编程

11.1 Socket编程

11.1.1 什么是Socket

11.1.2 Dial()函数

11.1.3 ICMP示例

11.1.4 TCP Socket

11.1.5 UDP Socket

11.2 HTTP编程

11.2.1 HTTP客户端

11.2.2 HTTP服务器端

11.3 RPC编程

11.3.1 Go RPC

11.3.2 HTTP RPC

11.3.3 TCP RPC

11.3.4 JSON RPC

11.3.5 RPC接口

11.4 数据库

11.4.1 database/sql接口

11.4.2 使用MySQL数据库

11.4.3 使用SQLite数据库

11.4.4 使用PostgreSQL数据库

11.4.5 NoSQL数据库操作

11.5 Go语言使用Cookie

11.5.1 设置Cookie

11.5.2 读取Cookie

11.6 本章小结

第12章 I/O编程

12.1 输入/输出

12.1.1 io:基本I/O接口

12.1.2 fmt:格式化I/O

12.1.3 文本处理

12.2 文件系统

12.2.1 os:系统功能实现

12.2.2 path:兼容路径操作

12.3 数据结构与算法

12.3.1 排序

12.3.2 container

12.4 本章小结

第13章 文件处理

13.1 文件操作

13.1.1 创建文件与查看状态

13.1.2 重命名与移动

13.1.3 打开与关闭

13.1.4 删除与截断

13.1.5 读写文件

13.1.6 权限控制

13.1.7 文件链接

13.2 XML处理

13.2.1 解析XML

13.2.2 生成XML

13.3 JSON处理

13.3.1 解析JSON

13.3.2 生成JSON

13.4 日志记录

13.4.1 Logrus

13.4.2 Seelog

13.5 压缩

13.5.1 打包与解包

13.5.2 压缩与解压

13.6 本章小结

第14章 安全与测试

14.1 安全

14.1.1 安全相关的基础概念

14.1.2 通信安全

14.2 测试

14.2.1 单元测试

14.2.2 基准测试

14.3 本章小结

第15章 内存管理

15.1 内存分配

15.1.1 内存管理基本概念

15.1.2 逃逸分析

15.2 TCMalloc

15.2.1 整体结构

15.2.2 小内存分配

15.2.3 CentralCache

15.2.4 大内存分配

15.3 Mspan(内存管理器)

15.4 垃圾回收

15.4.1 标记清理算法

15.4.2 标记实现

15.4.3 清理

15.4.4 监控

15.5 本章小结

Go语言编程入门与实战技巧是2018年由电子工业出版社出版,作者黄靖钧。

得书感谢您对《Go语言编程入门与实战技巧》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
PyTorch自然语言处理入门与实战 电子书
一本兼顾理论基础和工程实践的入门级教程。
自制编程语言 电子书
适读人群 :适合对编译原理及语言处理器设计有兴趣的读者以及正在学习相关课程的大中专院校学生。 前百度高 级工程师、专业书《操作系统真相还原》的作者的又一力作 业界专家联名推荐 滴滴系统部技术高 级总监于晓声 阿里巴巴蚂蚁金服技术专家肖金亮 百度资 深运维工程师陈晓聪 360企业安全集团政企云事业部技术总监冯顾 ACFUN高 级运维总监陆景玉 Mobvista运维总监黄梦溪 手把手地教读者从零去实现一门语言,从原理到实践事无巨细 每一步都有实际的代码和详尽的原理说明,读者可以很轻松地掌握各个实现细节 实现脚本语言重要的垃圾回收(GC)、虚拟机(VM)和线程等黑技术都在本书一一呈现
用Go语言自制编译器 电子书
放下大部头,换一种方式入门编译原理,体验一步步实现类C语言的乐趣。
编程竞赛宝典:C++语言和算法入门 电子书
信息学奥赛金牌教练精心之作,算法竞赛宝典。
R语言编程基础 电子书
《R语言学习手册》:7章全面介绍R语言及Rattle工具,附课后习题。