万本电子书0元读

万本电子书0元读

顶部广告

Go语言入门经典电子书

Go语言也称为 Golang,它出自计算机科学领域的三位巨匠Ken Thompson 和 Rob Pike、Robert Griesemer之手,在2009年由 Google 公司正式发布。Go语言是一种静态强类型、编译型、并发型及具有垃圾回收功能的源编程语言。它的主要目标是“兼具Python等动态语言的发速度和 C/C 等编译型语言的性能与安全性”。Go语言语法简单,规则严谨,具有并发模型、内存分配及垃圾回收机制。此外,Go语言拥有功能完善、质量可靠的标准库,借助这些标准库,可以快速发基础程序,极大降低学习与发成本。Go语言拥有完整的工具,编译、格式化、错误检查功能和帮助文档及第三方工具包都很完善,可以保证代码正确稳定地运行。正因为Go语言具有如此众多的特性,它被誉为“21世纪的编程语言”,成为一种国际化的新语言。

售       价:¥

纸质售价:¥74.80购买纸书

295人正在读 | 0人评论 6.2

作       者:周家安

出  版  社:清华大学出版社

出版时间:2021-03-01

字       数:14.6万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Go语言也称为Golang,它出自计算机科学领域的三位巨匠Ken Thompson、Rob Pikeh和Robert Griesemer之手,在2009年由Google公司正式发布。Go语言是一种静态强类型、编译型、并发型及具有垃圾回收功能的源编程语言。它的主要目标是“兼具Python等动态语言的发速度和C/C 等编译型语言的性能与安全性”。Go语言语法简单,规则严谨。此外,Go语言拥有功能完善、质量可靠的标准库,借助这些标准库,可以快速发基础程序,极大降低学习与发成本。Go语言拥有完整的工具,编译、格式化、错误检查功能和帮助文档及第三方工具包都很完善,可以保证代码正确稳定的运行。正因为Go语言具有如此众多的特性,它被誉为“21世纪的编程语言”,成为一种国际化的新语言。 《Go语言门经典/计算机科学与技术丛书》由知名IT发者周家安编著,内容通俗易懂、理论全面、实例丰富。 Go(Golang)语言在语法上与C、C 语言相似,是一门源的编程语言,可用于编写简单的、实用的应用程序。Go语言支持内存管理和垃圾回收(GC)机制,使用Go协程可以轻松实现并发计算。 《Go语言门经典/计算机科学与技术丛书》通过通俗易懂的文字,着重讲解Go语言编程的基础知识,同时配有丰富的示例。 《Go语言门经典/计算机科学与技术丛书》主要内容包括发环境配置及语法基础,代码包(Package),内置运算符与数据类型,代码流程控制,函数式、口与结构体,数组、切片与映射类型,反射技术,管理命令行参数,I/O、数据压缩及文件操作,加密与解密,网络编程,Go协程。 作为门教程,《Go语言门经典/计算机科学与技术丛书》适合对编程感兴趣并且希望通过自学来掌握Go语言基础知识的读者使用,或者有其他编程语言基础的读者阅读参考。 同时,《Go语言门经典/计算机科学与技术丛书》也可作为高等院校计算机及相关专业的教材。<br/>【推荐语】<br/>Go语言也称为 Golang,它出自计算机科学领域的三位巨匠Ken Thompson 和 Rob Pike、Robert Griesemer之手,在2009年由 Google 公司正式发布。Go语言是一种静态强类型、编译型、并发型及具有垃圾回收功能的源编程语言。它的主要目标是“兼具Python等动态语言的发速度和 C/C 等编译型语言的性能与安全性”。Go语言语法简单,规则严谨,具有并发模型、内存分配及垃圾回收机制。此外,Go语言拥有功能完善、质量可靠的标准库,借助这些标准库,可以快速发基础程序,极大降低学习与发成本。Go语言拥有完整的工具,编译、格式化、错误检查功能和帮助文档及第三方工具包都很完善,可以保证代码正确稳定地运行。正因为Go语言具有如此众多的特性,它被誉为“21世纪的编程语言”,成为一种国际化的新语言。 本书由知名IT发者周家安编著,图书通俗易懂、理论全面、实例丰富。涵盖了如下门读者*为关心的基础知识: 发环境配置; 语法基础; 代码包(Package); 内置运算符与数据类型; 代码流程控制; 函数式编程; 口与结构体; 数组、切片与映射类型; 常用的字符串与数学函数; 反射技术; 管理命令行参数; I/O与文件操作; 加密与解密; 数据压缩; 网络编程; Go协程。<br/>【作者】<br/>周家安,微软有价值专家(MVP)、编程爱好者,乐于分享各种编程技巧。擅长Web服务发、Windows系统发、Python语言编程。著有《.NETCore实战——手把手教你掌握380个精彩案例》《Python实战指南——手把手教你掌握300个精彩案例》等原创畅销图书。<br/>
目录展开

封面页

书名页

版权页

内容简介

作者简介

编辑推荐

前言 FOREWORD

目录

第1章 准备工作

1.1 安装Go语言编译器

1.2 配置环境变量

1.3 验证Go语言编译器的工作状态

第2章 语法基础

2.1 代码结构

2.2 main包与main函数

2.3 Go语句

2.4 代码块

2.5 注释

2.6 使用Go语言编译器

第3章 运算符

3.1 操作数

3.2 算术运算符

3.2.1 四则运算符

3.2.2 取余运算符

3.2.3 如何实现指数运算

3.2.4 自增与自减运算符

3.3 比较运算符

3.4 逻辑运算符

3.5 位运算符

3.5.1 按位与

3.5.2 按位或

3.5.3 取反

3.5.4 位移

3.5.5 按位异或

3.5.6 清除标志位

3.6 成员运算符

3.7 取地址运算符

3.8 复合运算符

3.9 运算符的优先级

第4章 程序包管理

4.1 package语句

4.2 程序包的目录结构

4.3 导入语句

4.4 初始化函数

4.5 模块

4.5.1 go.mod文件的基本结构

4.5.2 创建go.mod文件

4.5.3 编辑go.mod文件

4.5.4 使用本地模块

4.6 成员的可访问性

第5章 变量与常量

5.1 变量的初始化

5.2 组合赋值

5.3 匿名变量

5.4 常量

5.5 批量声明

5.6 变量的作用域

5.7 变量的默认值

第6章 基础类型

6.1 字符与字符串

6.1.1 rune类型

6.1.2 string类型

6.2 数值类型

6.2.1 示例:获取数值类型占用的内存大小

6.2.2 整数常量的表示方式

6.2.3 科学记数法

6.2.4 复数

6.3 日期与时间

6.3.1 Month类型

6.3.2 Weekday类型

6.3.3 Duration类型

6.3.4 Time类型

6.3.5 Sleep函数

6.3.6 Timer类型

6.4 指针

6.4.1 何时使用指针类型

6.4.2 new函数

6.5 iota常量

第7章 函数

7.1 函数的定义

7.2 调用函数

7.3 return语句

7.4 多个返回值

7.5 可变个数的参数

7.6 匿名函数

7.7 将函数作为参数传递

第8章 流程控制

8.1 顺序执行

8.2 if语句

8.3 switch语句

8.3.1 基于表达式构建的switch语句

8.3.2 基于类型构建的switch语句

8.3.3 fallthrough语句

8.4 for语句

8.4.1 仅带条件子句的for语句

8.4.2 带三个子句的for语句

8.4.3 枚举集合元素语句

8.4.4 continue与break语句

8.5 代码跳转

8.5.1 代码标签与goto语句

8.5.2 break、continue语句与代码跳转

第9章 接口与结构体

9.1 自定义类型

9.2 结构体

9.2.1 结构体的定义

9.2.2 结构体的实例化

9.2.3 方法

9.3 接口

9.3.1 接口的定义

9.3.2 接口的实现

9.3.3 空接口——interface{}

9.3.4 接口与函数

9.4 类型嵌套

9.5 类型断言

第10章 数组与切片

10.1 数组

10.1.1 数组的初始化

10.1.2 访问数组元素

10.1.3 *[n]T与[n]*T的区别

10.1.4 多维数组

10.2 切片

10.2.1 创建切片实例

10.2.2 添加和删除元素

第11章 映射与链表

11.1 映射

11.1.1 映射对象的初始化

11.1.2 访问映射对象的元素

11.1.3 检查key的存在性

11.2 双向链表

11.2.1 与双向链表有关的API

11.2.2 创建链表实例

11.2.3 添加和删除元素

11.2.4 移动元素

11.2.5 枚举链表元素

11.3 环形链表

11.3.1 与环形链表有关的API

11.3.2 使用环形链表

11.3.3 滚动环形链表

11.3.4 链接两个环形链表

第12章 反射

12.1 关键API

12.2 获取类型信息

12.2.1 类型分辨

12.2.2 枚举结构体类型的方法列表

12.2.3 枚举结构体类型的字段列表

12.2.4 查找嵌套结构体的字段成员

12.2.5 获取函数的参数信息

12.2.6 获取通道类型的信息

12.2.7 判断类型是否实现了某个接口

12.3 Value与对象的值

12.3.1 修改对象的值

12.3.2 读写结构体实例的字段

12.3.3 更新数组/切片的元素

12.3.4 调用函数

12.3.5 调用方法

12.3.6 读写映射类型的元素

12.4 动态构建类型

12.4.1 New函数

12.4.2 创建数组类型

12.4.3 创建结构体类型

12.4.4 动态创建和调用函数

12.4.5 生成通用函数体

12.5 结构体的Tag

第13章 字符串处理

13.1 打印文本

13.2 格式化输出

13.2.1 格式化整数值

13.2.2 格式化浮点数值

13.2.3 格式化字符串

13.2.4 格式化布尔类型的值

13.2.5 %T与%v格式控制符

13.2.6 输出包含前缀的整数值

13.2.7 设置输出内容的宽度

13.2.8 控制浮点数的精度

13.2.9 参数索引

13.2.10 通过参数来控制文本的宽度和精度

13.3 读取输入文本

13.3.1 读取键盘输入的内容

13.3.2 从文件中读入文本

13.3.3 以特定的格式读取文本

13.4 实现Stringer接口

13.5 连接字符串

13.6 替换字符串

13.7 拆分字符串

13.8 查找子字符串

13.8.1 查找前缀与后缀

13.8.2 查找子字符串的位置

13.9 修剪字符串

13.9.1 去除前缀和后缀

13.9.2 去除字符串首尾的空格

13.9.3 修剪指定的字符

13.10 重复字符串

13.11 字符串与数值之间的转换

13.12 切换大小写

13.13 使用Builder构建字符串

第14章 常用数学函数

14.1 求绝对值

14.2 最大值与最小值

14.3 三角函数与反三角函数

14.4 幂运算

14.5 开平方/立方根

14.6 大型数值

14.6.1 大型整数值之间的运算

14.6.2 阶乘运算

14.6.3 使用大型浮点数值

14.7 随机数

14.7.1 生成随机浮点数

14.7.2 生成随机整数

14.7.3 设置随机数种子

14.7.4 生成随机全排列

14.7.5 “洗牌”程序

14.7.6 生成随机字节序列

第15章 排序

15.1 基本排序函数

15.2 实现递减排序

15.3 按字符串的长度排序

15.4 Interface接口

第16章 输入与输出

16.1 简单的内存缓冲区

16.2 与输入/输出有关的接口类型

16.2.1 实现读写功能

16.2.2 嵌套封装

16.3 Buffer类型

16.4 Copy函数

16.5 MultiReader函数和MultiWriter函数

16.6 SectionReader

第17章 文件与目录

17.1 文件操作

17.1.1 Create函数与Open函数

17.1.2 重命名文件

17.1.3 获取文件信息

17.1.4 OpenFile函数

17.2 创建和删除目录

17.3 硬链接与符号链接

17.3.1 硬链接

17.3.2 符号链接

17.4 WriteFile函数与ReadFile函数

17.5 临时文件

17.6 更改程序的工作目录

第18章 加密与解密

18.1 Base64的编码与解码

18.1.1 内置Base64编码方案

18.1.2 基于流的编码与解码

18.1.3 自定义字符映射表

18.2 DES与AES算法

18.2.1 Block接口

18.2.2 BlockMode模式

18.2.3 基于流的加密与解密

18.3 哈希算法

18.3.1 hash.Hash接口

18.3.2 使用crypto子包中的哈希API

18.3.3 HMAC算法

18.4 RSA算法

18.4.1 生成密钥

18.4.2 加密和解密

18.4.3 存储密钥

18.5 PEM编码

18.5.1 编码与解码

18.5.2 解码后的保留数据

18.5.3 消息头

第19章 命令行参数

19.1 os.Args变量

19.2 命令行参数分析API——flag包

19.2.1 命令行参数与变量的绑定

19.2.2 Value接口

第20章 数据压缩

20.1 标准库对压缩算法的支持

20.2 Gzip压缩算法

20.2.1 Gzip基本用法

20.2.2 压缩多个文件

20.2.3 解压多个文件

20.3 DEFLATE算法

20.4 自定义的索引字典

20.5 Zip文档

20.5.1 从Zip文档中读取文件

20.5.2 在内存中读写Zip文档

20.5.3 注册压缩算法

20.6 Tar文档

第21章 协程

21.1 启动Go协程

21.2 通道

21.2.1 实例化通道

21.2.2 数据缓冲

21.2.3 单向通道

21.2.4 通道与select语句

21.3 互斥锁

21.4 WaitGroup类型

第22章 网络编程

22.1 枚举本地计算机上的网络接口

22.2 Socket通信

22.2.1 TCP示例:文件传输

22.2.2 UDP示例:文本传输

22.3 HTTP客户端

22.3.1 发送GET与POST请求

22.3.2 发送自定义HTTP头

22.4 HTTP服务器

22.4.1 创建HTTP服务器

22.4.2 实现Handler接口

22.4.3 ServeMux类型

22.4.4 封装函数

22.4.5 读取URL参数

22.4.6 获取客户端提交的表单数据

22.4.7 读取客户端上传的文件

22.5 CGI编程

22.5.1 准备工作

22.5.2 示例:一个简单的CGI程序

22.5.3 使用cgi包

22.5.4 在子进程中获取Request对象

附录A 常用API与程序包对照表

附录B Go语言代码编辑工具使用说明

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部