Go程序设计语言

Go程序设计语言 pdf epub mobi txt 电子书 下载 2026

出版者:机械工业出版社
作者:艾伦 A. A. 多诺万
出品人:
页数:286
译者:李道兵
出版时间:2017-5
价格:79
装帧:
isbn号码:9787111558422
丛书系列:计算机科学丛书
图书标签:
  • Go语言
  • Go
  • 计算机
  • 编程
  • 计算机科学
  • golang
  • Golang
  • go语言
  • Go语言
  • 程序设计
  • 编程语言
  • 软件开发
  • 算法
  • 数据结构
  • 并发编程
  • 系统编程
  • 云计算
  • 高效开发
  • 面向对象
想要找书就要到 小美书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

本书由《C程序设计语言》的作者Kernighan和谷歌公司Go团队主管Alan Donovan联袂撰写,是学习Go语言程序设计的指南。本书共13章,主要内容包括:Go的基础知识、基本结构、基本数据类型、复合数据类型、函数、方法、接口、goroutine、通道、共享变量的并发性、包、go工具、测试、反射等。

本书适合作为计算机相关专业的教材,也可供Go语言爱好者阅读。

作者简介

目录信息

出版者的话
译者序
前言
第1章 入门 1
1.1 hello,world 1
1.2 命令行参数 3
1.3 找出重复行 6
1.4 GIF动画 10
1.5 获取一个URL 12
1.6 并发获取多个URL 13
1.7 一个Web服务器 14
1.8 其他内容 17
第2章 程序结构 20
2.1 名称 20
2.2 声明 21
2.3 变量 22
2.3.1 短变量声明 22
2.3.2 指针 23
2.3.3 new函数 25
2.3.4 变量的生命周期 26
2.4 赋值 27
2.4.1 多重赋值 27
2.4.2 可赋值性 28
2.5 类型声明 29
2.6 包和文件 30
2.6.1 导入 31
2.6.2 包初始化 33
2.7 作用域 34
第3章 基本数据 38
3.1 整数 38
3.2 浮点数 42
3.3 复数 45
3.4 布尔值 47
3.5 字符串 47
3.5.1 字符串字面量 49
3.5.2 Unicode 49
3.5.3 UTF-8 50
3.5.4 字符串和字节slice 53
3.5.5 字符串和数字的相互转换 56
3.6 常量 56
3.6.1 常量生成器iota 57
3.6.2 无类型常量 59
第4章 复合数据类型 61
4.1 数组 61
4.2 slice 63
4.2.1 append函数 66
4.2.2 slice就地修改 69
4.3 map 71
4.4 结构体 76
4.4.1 结构体字面量 78
4.4.2 结构体比较 80
4.4.3 结构体嵌套和匿名成员 80
4.5 JSON 82
4.6 文本和HTML模板 87
第5章 函数 92
5.1 函数声明 92
5.2 递归 93
5.3 多返回值 96
5.4 错误 98
5.4.1 错误处理策略 99
5.4.2 文件结束标识 101
5.5 函数变量 102
5.6 匿名函数 104
5.7 变长函数 110
5.8 延迟函数调用 111
5.9 宕机 115
5.10 恢复 118
第6章 方法 120
6.1 方法声明 120
6.2 指针接收者的方法 122
6.3 通过结构体内嵌组成类型 124
6.4 方法变量与表达式 127
6.5 示例:位向量 128
6.6 封装 130
第7章 接口 133
7.1 接口即约定 133
7.2 接口类型 135
7.3 实现接口 136
7.4 使用flag.Value来解析参数 139
7.5 接口值 141
7.6 使用sort.Interface来排序 144
7.7 http.Handler接口 148
7.8 error接口 152
7.9 示例:表达式求值器 154
7.10 类型断言 160
7.11 使用类型断言来识别错误 161
7.12 通过接口类型断言来查询特性 162
7.13 类型分支 164
7.14 示例:基于标记的XML解析 166
7.15 一些建议 168
第8章 goroutine和通道 170
8.1 goroutine 170
8.2 示例:并发时钟服务器 171
8.3 示例:并发回声服务器 174
8.4 通道 176
8.4.1 无缓冲通道 177
8.4.2 管道 178
8.4.3 单向通道类型 180
8.4.4 缓冲通道 181
8.5 并行循环 183
8.6 示例:并发的Web爬虫 187
8.7 使用select多路复用 190
8.8 示例:并发目录遍历 192
8.9 取消 195
8.10 示例:聊天服务器 198
第9章 使用共享变量实现并发 201
9.1 竞态 201
9.2 互斥锁:sync.Mutex 205
9.3 读写互斥锁:sync.RWMutex 208
9.4 内存同步 208
9.5 延迟初始化:sync.Once 210
9.6 竞态检测器 212
9.7 示例:并发非阻塞缓存 212
9.8 goroutine与线程 218
9.8.1 可增长的栈 219
9.8.2 goroutine调度 219
9.8.3 GOMAXPROCS 219
9.8.4 goroutine没有标识 220
第10章 包和go工具 221
10.1 引言 221
10.2 导入路径 221
10.3 包的声明 222
10.4 导入声明 223
10.5 空导入 223
10.6 包及其命名 225
10.7 go工具 226
10.7.1 工作空间的组织 227
10.7.2 包的下载 228
10.7.3 包的构建 229
10.7.4 包的文档化 231
10.7.5 内部包 232
10.7.6 包的查询 233
第11章 测试 235
11.1 go test工具 235
11.2 Test函数 236
11.2.1 随机测试 239
11.2.2 测试命令 240
11.2.3 白盒测试 242
11.2.4 外部测试包 245
11.2.5 编写有效测试 246
11.2.6 避免脆弱的测试 247
11.3 覆盖率 248
11.4 Benchmark函数 250
11.5 性能剖析 252
11.6 Example函数 254
第12章 反射 256
12.1 为什么使用反射 256
12.2 reflect.Type和reflect.Value 257
12.3 Display:一个递归的值显示器 259
12.4 示例:编码S表达式 263
12.5 使用reflect.Value来设置值 266
12.6 示例:解码S表达式 268
12.7 访问结构体字段标签 271
12.8 显示类型的方法 273
12.9 注意事项 274
第13章 低级编程 276
13.1 unsafe.Sizeof、Alignof 和Offsetof 276
13.2 unsafe.Pointer 278
13.3 示例:深度相等 280
13.4 使用cgo调用C代码 282
13.5 关于安全的注意事项 286
· · · · · · (收起)

读后感

评分

一星是打给翻译的,原著我想打6分。 本来看的中文版,无奈翻译实在是看不懂,只好买了一本英文版。本以为看英文会比较吃力,没想到的是,英文看起来竟然比中文流畅的多。同时也发现一些翻译上的问题,在此记录一下。 这本书的翻译实在是太差了!有很多地方译者根本就没有理解原...  

评分

一星是打给翻译的,原著我想打6分。 本来看的中文版,无奈翻译实在是看不懂,只好买了一本英文版。本以为看英文会比较吃力,没想到的是,英文看起来竟然比中文流畅的多。同时也发现一些翻译上的问题,在此记录一下。 这本书的翻译实在是太差了!有很多地方译者根本就没有理解原...  

评分

Go语言总览 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 。。。。。。。。。。。。 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。...  

评分

Go语言总览 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 。。。。。。。。。。。。 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。...  

评分

Go语言总览 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 。。。。。。。。。。。。 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。...  

用户评价

评分

我收藏了很多编程书籍,但真正能让我愿意放在手边随时翻阅,并且每次都能发现新东西的,屈指可数。这本书无疑是其中之一。它的排版设计也值得称赞,结构清晰,逻辑流畅,阅读体验极佳,不会因为界面设计而分散注意力。它成功地在理论深度和工程实践之间找到了一个完美的平衡点。如果有人问我,想要快速且高质量地掌握一门现代且强大的编程技术,应该从哪里开始,我的答案一定是推荐这本书。它不仅仅教会了工具的使用,更塑造了一种严谨、高效、注重细节的编程哲学。它是一本能够伴随你从初级程序员成长为资深工程师的“路标”,而不是一本读完就束之高阁的“一次性读物”。它的价值是持久的、递增的。

评分

我之前尝试过几本号称是“最好的入门书”,结果往往是读了开头就放弃了,要么是内容过于陈旧,要么是代码示例晦涩难懂。然而,这本作品彻底颠覆了我的看法。它在保持技术严谨性的同时,非常注重可读性和现代性。作者似乎非常理解现代开发者的痛点,对那些容易让人混淆的概念,总能给出恰到好处的澄清和对比。书中的代码片段总是简洁、优雅且具有高度的实战价值,完全可以作为日常工作的参考模板。更让我赞赏的是,它对一些高级特性的介绍也处理得非常巧妙,不是一蹴而就地抛出所有细节,而是循序渐进地引导读者去探索更复杂的编程范式。阅读过程就像一场精心设计的探险,每翻过一章,你都会感觉自己又解锁了一个新的能力,这种成就感是无与伦比的。

评分

对于一个已经有一定编程基础的开发者来说,寻找一本既能巩固旧知又能启发新思路的书籍实属不易。幸运的是,这本书正好填补了这个空白。它的深度足够挑战那些自认为已经掌握了基础的人,同时它的广度又确保了读者能够全面了解一个现代编程生态的全貌。书中对于标准库的剖析细致入微,很多我过去只是“知道存在”但从未使用过的功能,通过本书的讲解,我现在能熟练地将其应用到实际项目中,极大地提升了我的开发效率。特别是关于错误处理和测试的章节,提供了非常实用的、可立即上手的策略,这在很多同类书籍中常常被一带而过。阅读这本书的体验,更像是进行了一次系统的“技能重构”,让我对过去的代码习惯进行了审视和优化,获得了质的飞跃。

评分

这本书真是一本引人入胜的计算机编程经典之作!从翻开第一页开始,我就被作者深入浅出的讲解方式深深吸引住了。它不像那些枯燥乏味的教科书,而是像一位经验丰富的老朋友在耐心引导你入门。书中的概念讲解得极其清晰透彻,即便是初次接触这个领域的读者,也能很快跟上节奏。尤其让我印象深刻的是,作者在介绍基础语法和数据结构时,总是能用非常贴切的例子来阐述复杂的原理,让人在实践中理解抽象的知识点。它不仅仅是告诉你“怎么做”,更重要的是告诉你“为什么这么做”,这对于建立扎实的编程思维至关重要。读完这本书,我感觉自己对底层逻辑的理解提升到了一个新的高度,不再是机械地敲代码,而是真正理解了程序是如何在机器上运行的。这种由内而外的转变,是许多编程书籍难以企及的。每一次重读,都会有新的感悟,仿佛每一次都能挖掘出更深层次的智慧。

评分

说实话,我是一个对技术文档有极高要求的人,因为我发现很多技术书籍要么是“为写而写”,要么是翻译腔过重,读起来非常累。但这本书的行文风格简直是一股清流。它的语言充满了活力和洞察力,仿佛作者正在和你进行一场面对面的技术沙龙。在讲解到并发处理和内存管理这些“硬骨头”时,作者并没有采用生硬的术语堆砌,而是通过生动的比喻和架构图来构建清晰的知识脉络。这使得原本令人望而生畏的主题变得触手可及。我尤其欣赏作者在书中穿插的那些“最佳实践”和“陷阱提醒”,这些经验之谈是教科书上学不到的宝贵财富,它们直接关系到我写出的代码的健壮性和效率。这本书的价值,远超于其作为一本参考资料的定位,它更像是一份能让你职业生涯受益匪浅的“内功心法”。

评分

语句翻译得难懂。。。。

评分

Technical Writing的典范,写的非常清晰而精确。程序员即使不学Go语言,或者熟悉Go语言,也应该读读。

评分

入门go的话就它了,语法什么的都讲到了,翻译的还可以其实

评分

对于语言本身的讲解 比《go学习笔记》顺畅很多

评分

入门go的话就它了,语法什么的都讲到了,翻译的还可以其实

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.quotespace.org All Rights Reserved. 小美书屋 版权所有