万本电子书0元读

万本电子书0元读

顶部广告

Go语言第一课电子书

1. 系统性门路径,理念到实战无断!先剖析Go语言历史、设计哲学建立认知,再逐步讲解发环境、语法特性,通过实战项目与测试知识落地应用,形成完整学习闭环。 2. 全维度语法覆盖,新旧特性无遗漏!不仅囊括变量、常量、函数等基础语法,还深度解读并发、泛型等复杂特性,同步纳Go语言新加功能,助你掌握语言规范。 3. 保姆级教学讲解,抽象概念易理解!从变量、数据类型等基础概念手,延伸算法与现实世界抽象认知,清晰拆解Go应用运行逻辑,降低新手学习门槛。

售       价:¥

纸质售价:¥62.20购买纸书

5人正在读 | 0人评论 6.3

作       者:白明 著

出  版  社:人民邮电出版社有限公司

出版时间:2025-08-01

字       数:26.4万

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

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

为你推荐

  • 读书简介
  • 目录
  • 累计评论(条)
  • 读书简介
  • 目录
  • 累计评论(条)
本书由浅深地介绍了Go编程语言。首先,本书揭示了Go的发展历程和设计哲学,引导读者了解Go的核心理念;其次,详细介绍了建立Go发环境、编写Go程序、Go的代码组织和依赖管理等内容,为读者夯实编程基础;再次,重讲解了Go的语法特性,包括变量与类型、基本数据类型、常量、复合数据类型、指针类型、控制结构、函数、错误处理、方法、口类型、并发编程、泛型等,确保读者能够掌握Go的复杂特性;最后,介绍了Go的测试,帮助读者确保代码质量和性能。 本书结构清晰,内容丰富,适合对Go感兴趣并希望系统学习的读者阅读和参考。<br/>【推荐语】<br/>1. 系统性门路径,理念到实战无断!先剖析Go语言历史、设计哲学建立认知,再逐步讲解发环境、语法特性,通过实战项目与测试知识落地应用,形成完整学习闭环。 2. 全维度语法覆盖,新旧特性无遗漏!不仅囊括变量、常量、函数等基础语法,还深度解读并发、泛型等复杂特性,同步纳Go语言新加功能,助你掌握语言规范。 3. 保姆级教学讲解,抽象概念易理解!从变量、数据类型等基础概念手,延伸算法与现实世界抽象认知,清晰拆解Go应用运行逻辑,降低新手学习门槛。 4. 实战化避坑指南,编程惯例早掌握!结合语法讲解过程,同步揭示Go语言常见坑及避坑方法,全程贯穿Go编程惯例与实践,帮助读者养成规范编码习惯。 5. 工程化能力培养,代码质量有保障!详解包、模块、依赖管理等工程化知识,配套测试框架、覆盖率分析、性能基准测试等内容,助力读者写出高质量、高可用性的Go代码。<br/>【作者】<br/>白明(Tony Bai),架构师,Go技术专家,tonybai..com博客博主,GopherChina大会讲师。拥有超过二十年的IT从业经验,对高性能、高并发系统架构有深的研究与丰富的实践经验。 早在2011年Go还处于早期发展阶段时,他便始关注并实践该语言,是国内探索和推广Go的先行者之一。多年来,他成功地将Go应用于电信、智能网联汽车等多个前沿领域的大型项目中,带领团队构建并交付了多个市场领先的Go应用系统,其中包括占据移动市场重要份额的短信网关、高性能的5G消息网关,以及应用于多家知名车企量产车型的车云平台等。 与此同时,他坚持写作,通过技术博客、Gopher日报、图书《Go语言精之路》以及在极客时间设的广受欢迎的专栏《Go语言第一课》《Go语言阶课》等,系统地分享了Go知识与实战经验,深刻影响了数万名发者。<br/>
目录展开

内容提要

前言

资源与支持

第1章 Go的那些事儿

1.1 Go的历史与现状

1.1.1 Go是怎样诞生的

1.1.2 从“三人行”到“众人拾柴”

1.1.3 Go是否值得我们学习

1.1.4 学习Go的最佳时机

1.2 Go的设计哲学

1.2.1 简单

1.2.2 显式

1.2.3 组合

1.2.4 并发

1.2.5 面向工程

1.3 本章小结

第2章 建立Go开发环境

2.1 选择Go版本

2.2 安装Go

2.2.1 使用安装包安装Go

2.2.2 使用预编译二进制包安装Go

2.2.3 使用go install命令安装Go

2.2.4 基于源码编译安装Go

2.2.5 安装和管理多个Go版本

2.3 配置Go

2.4 在线体验Go

2.5 本章小结

第3章 第一个Go程序

3.1 “hello, world”示例程序

3.1.1 创建helloworld文件夹

3.1.2 编写并运行第一个Go程序

3.2 Go程序的结构

3.3 编译Go程序

3.4 第一个Go module

3.5 本章小结

第4章 Go包、模块与代码组织结构

4.1 Go包

4.1.1 Go包的定义与导入

4.1.2 Go包的初始化函数

4.1.3 Go程序的编译单元

4.2 Go module

4.3 Go项目的代码组织结构

4.3.1 创世项目

4.3.2 社区共识

4.3.3 官方指南

4.4 本章小结

第5章 Go的依赖管理

5.1 Go依赖管理模式的演化

5.2 基于Go module的依赖管理

5.3 常见的Go module操作

5.3.1 添加依赖

5.3.2 升级/降级依赖的版本

5.3.3 添加一个主版本号大于1的依赖

5.3.4 升级依赖版本到一个不兼容版本

5.3.5 移除依赖

5.3.6 兼容vendor

5.3.7 替换依赖

5.4 本章小结

第6章 变量与类型

6.1 变量与类型的意义

6.2 变量声明

6.2.1 未显式赋予初值

6.2.2 变量声明块

6.2.3 省略类型信息的声明

6.2.4 短变量声明

6.2.5 包级变量的声明形式

6.2.6 局部变量的声明形式

6.3 变量的作用域

6.4 本章小结

第7章 基本数据类型

7.1 布尔类型

7.2 数值类型

7.2.1 整型

7.2.2 浮点类型

7.2.3 复数类型

7.3 字符串类型

7.3.1 原生支持字符串类型的好处

7.3.2 Go字符串的组成

7.3.3 Go字符串类型的内部表示

7.3.4 Go字符串类型的常见操作

7.4 本章小结

第8章 常量

8.1 常量基础

8.2 Go原生支持常量的好处

8.3 Go常量的创新

8.3.1 无类型常量

8.3.2 隐式转型

8.3.3 实现枚举

8.4 本章小结

第9章 复合数据类型

9.1 数组:同构静态复合类型

9.1.1 数组的基本特性

9.1.2 多维数组

9.2 切片:同构动态复合类型

9.2.1 切片基础

9.2.2 切片类型的实现

9.2.3 切片的扩容

9.3 map类型

9.3.1 map基础

9.3.2 map变量的声明和初始化

9.3.3 map的基本操作

9.3.4 map变量的传递开销

9.3.5 map的并发访问

9.4 结构体类型:建立对真实世界的抽象

9.4.1 定义一个新类型

9.4.2 定义结构体类型

9.4.3 结构体变量的声明与初始化

9.5 本章小结

第10章 指针类型

10.1 什么是指针类型

10.2 指向指针类型变量的指针

10.3 指针用途与使用限制

10.4 本章小结

第11章 控制结构

11.1 if语句

11.1.1 认识if语句

11.1.2 支持声明if语句的自用变量

11.1.3 if语句的“快乐路径”原则

11.2 for语句

11.2.1 for语句的经典使用形式

11.2.2 for range循环形式

11.2.3 带label的continue语句

11.2.4 break语句的使用

11.2.5 循环变量重用

11.3 switch语句

11.3.1 认识switch语句

11.3.2 switch语句的灵活性

11.3.3 type switch

11.4 本章小结

第12章 函数

12.1 Go函数基础

12.1.1 函数声明

12.1.2 函数参数

12.1.3 函数返回值

12.2 函数是“一等公民”

12.3 defer:简化函数实现

12.3.1 认识defer

12.3.2 使用defer的注意事项

12.4 本章小结

第13章 错误处理

13.1 Go的错误处理

13.1.1 Go的错误处理机制

13.1.2 错误值构造与检视

13.2 Go的异常处理

13.2.1 认识panic

13.2.2 如何应对panic

13.3 本章小结

第14章 方法

14.1 认识Go方法

14.1.1 方法的声明

14.1.2 方法的本质

14.2 选择receiver参数类型

14.2.1 receiver参数类型对Go方法的影响

14.2.2 选择receiver参数类型的原则

14.3 方法集合

14.3.1 为什么要有方法集合

14.3.2 方法集合的定义

14.3.3 选择receiver参数类型的第三个原则

14.4 类型嵌入模拟“实现继承”

14.5 本章小结

第15章 接口类型

15.1 接口类型基础

15.1.1 接口类型的定义

15.1.2 尽量定义“小接口”

15.2 接口类型的实现

15.2.1 接口的静态特性与动态特性

15.2.2 nil的error值不等于nil

15.2.3 接口类型变量的内部表示

15.3 使用接口时的注意事项

15.4 本章小结

第16章 并发编程

16.1 什么是并发

16.2 Go的并发方案

16.2.1 goroutine的基本用法

16.2.2 CSP并发模型

16.3 goroutine间的通信

16.3.1 作为“一等公民”的channel

16.3.2 channel与select结合使用的惯用法

16.4 本章小结

第17章 泛型

17.1 Go泛型设计演化简史

17.2 Go泛型语法

17.2.1 例子:返回切片中值最大的元素

17.2.2 类型参数

17.2.3 类型约束

17.3 本章小结

第18章 测试

18.1 Go测试框架

18.2 测试的组织

18.2.1 测试文件使用的包名

18.2.2 表驱动测试

18.2.3 最小测试单元

18.2.4 将顶层测试函数作为测试套件

18.2.5 将子测试视为测试用例

18.3 示例测试

18.4 测试覆盖率

18.5 性能基准测试

18.5.1 编写基准测试

18.5.2 并行执行的基准测试

18.5.3 建立性能基准

18.6 本章小结

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

发表评论

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

买过这本书的人还买过

读了这本书的人还在读

回顶部