Golang 101(Go语言101 中文版) v1.21.a第14章:Go类型系统概述 - 精通Go编程必读 第15章:指针 第16章:结构体 第17章:值部 - 为了更容易和更深刻地理解Go中的各种值 第18章:数组、切片和映射 - Go中的首要容器类型 第19章:字符串 第20章:函数 - 函数类型和函数值,以及变长参数个数函数 第21章:通道 - Go特色的并发同步方式 第22章:方法 第23章:接口 - 通过包裹不同具体类型的非接口值来实现反射和多态 第24章:类型内嵌 这些条件和循环控制语句可以看作是特殊的操作。 它们的语法接近 于人类语言,因此一个人写的代码很容易被其他人理解。 在 大 多 数 高 级 编 程 语 言 中 , 数 据 通 常 被 抽 象 为 各 种 类 型 ( type ) 和 值 (value)。 一个类型可以看作是值的模板。一个值可以看作是某个类型的实 例。 大多数编程语言支持自定义类型和若干预声明类型(即内置类型)。 一门 语言的类型系统可以说是这门语言的灵魂。 ) 表示内置基本类型int。int类型是 Go中的内置基本整数类型之一。 第5行中的16、第17行中的0、 第20行中的1以 及第30行的100均为整型字面量。 第35行的"Result: "是一个字符串字面量。 请阅读基本类型和它们的字面量表示(第6章)以获取更多关于基本类型和它们 的字面量的信息。 Go中的非基本类型(均为组合类型)将在以后的其它文章中 介绍和解释。 第20行是一个赋值语句。0 码力 | 608 页 | 1.08 MB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a第14章:Go类型系统概述 - 精通Go编程必读 第15章:指针 第16章:结构体 第17章:值部 - 为了更容易和更深刻地理解Go中的各种值 第18章:数组、切片和映射 - Go中的首要容器类型 第19章:字符串 第20章:函数 - 函数类型和函数值,以及变长参数个数函数 第21章:通道 - Go特色的并发同步方式 第22章:方法 第23章:接口 - 通过包裹不同具体类型的非接口值来实现反射和多态 第24章:类型内嵌 表示内置基本类型int。int类型 是Go中的内置基本整数类型之一。 第5行中的16、第17行中的0、 第20行中的 1以及第30行的100均为整型字面量。 第35行的"Result: "是一个字符串字面 量。 请阅读基本类型和它们的字面量表示(第6章)以获取更多关于基本类型 和它们的字面量的信息。 Go中的非基本类型(均为组合类型)将在以后的其 它文章中介绍和解释。 第20行是一个赋值语句。 名常量。 上面的示例程序中使用了很多操作符,比如第17和19行的小于比较符<,第36 行的等于比较符==,还有第20和36行的加法运算符+。 第35行中的+不是一个 运算符,它是一个字符串字面量中的一个字符。 一个使用操作符的操作中涉 及到的值称为操作值(有时也可称为运算数)。 请阅读常用操作符(第8章) 以获取更多关于操作符的信息。 更多操作符将在后续其它文章中介绍。 第35和36行调用0 码力 | 821 页 | 956.82 KB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a第14章:Go类型系统概述 - 精通Go编程必读 第15章:指针 第16章:结构体 第17章:值部 - 为了更容易和更深刻地理解Go中的各种值 第18章:数组、切片和映射 - Go中的首要容器类型 第19章:字符串 第20章:函数 - 函数类型和函数值,以及变长参数个数函数 第21章:通道 - Go特色的并发同步方式 第22章:方法 第23章:接口 - 通过包裹不同具体类型的非接口值来实现反射和多态 第24章:类型内嵌 为了编程灵活和不易出错,其它的值一般使用变 量(variable)和(具名)常量(named constant)来表示。 在《Go语言101》中,具名的函数、具名的值(包括变量和具名常量)、以及定义类 型和类型别名将被统称为代码要素。 代码要素名必须为标识符(identifier)(第 5章)。 高级编程语言代码将被编译器或者解释器转换为底层机器码进行执行。 为了帮助编 译器和解释器解析高 表示内置基本类型int。int类型是 Go中的内置基本整数类型之一。 第5行中的16、第17行中的0、 第20行中的1以及 第30行的100均为整型字面量。 第35行的"Result: "是一个字符串字面量。 请 阅读基本类型和它们的字面量表示(第6章)以获取更多关于基本类型和它们的字面 量的信息。 Go中的非基本类型(均为组合类型)将在以后的其它文章中介绍和解 释。 第20行是一个赋值语句。0 码力 | 591 页 | 21.40 MB | 1 年前3
Go 入门指南(The way to Go)9,Inferno 操作系统和 Limbo 编程语言;Ken Thompson,贝尔实验室 Unix 团队成员,C 语言、Unix 和 Plan 9 的创始人之一,与 Rob Pike 共同开 发了 UTF-8 字符集规范。自 2008 年 1 月起,Ken Thompson 就开始研发一款以 C 语言为目标结果的编 译器来拓展 Go 语言的设计思想。 这是一个由计算机领域 “发明之父” 所组成的黄金团队, 状态投入到这个项目的编译器 和运行实现上。Ian Lance Taylor 也加入到了开发团队中,并于 2008 年 5 月创建了一个 gcc 前端。 Russ Cox 加入开发团队后着手语言和类库方面的开发,也就是 Go 语言的标准包。在 2009 年 10 月 30 日,Rob Pike 以 Google Techtalk 的形式第一次向人们宣告了 Go 语言的存在。 直到 2009 年 Erlang 类似的机制。 这是一门完全开源的编程语言,因为它使用 BSD 授权许可,所以任何人都可以进行商业软件的开发而不需 要支付任何费用。 尽管为了能够让目前主流的开发者们能够对 Go 语言中的类 C 语言的语法感到非常亲切而易于转型,但是 它在极大程度上简化了这些语法,使得它们比 C/C++ 的语法更加简洁和干净。同时,Go 语言也拥有一些 动态语言的特性,这使得使用 Python 和 Ruby0 码力 | 380 页 | 2.97 MB | 1 年前3
Go 入门指南(The way to Go)9 与其它语言进行交互 第4章:基本结构和基本数据类型 4.1 文件名、关键字与标识符 4.2 Go 程序的基本结构和要素 4.3 常量 4.4 变量 4.5 基本类型和运算符 4.6 字符串 4.7 strings 和 strconv 包 4.8 时间和日期 4.9 指针 - 2 - 本文档使用 书栈(BookStack.CN) 构建 第5章:控制结构 5.1 if-else 通过内存缓存来提升性能 第7章:数组与切片 7.1 声明和初始化 7.2 切片 7.3 For-range 结构 7.4 切片重组(reslice) 7.5 切片的复制与追加 7.6 字符串、数组和切片的应用 第8章:Map 8.1 声明、初始化和 make 8.2 测试键值对是否存在及删除元素 8.3 for-range 的配套用法 8.4 map 类型的切片 8.5 map 1 tcp服务器 15.2 一个简单的网页服务器 15.3 访问并读取页面 15.4 写一个简单的网页应用 第 16章 常见的陷阱与错误 16.1 误用短声明导致变量覆盖 16.2 误用字符串 16.3 发生错误时使用defer关闭一个文件 16.4 何时使用new()和make() - 5 - 本文档使用 书栈(BookStack.CN) 构建 16.5 不需要将一个指向切片的指针传递给函数0 码力 | 466 页 | 4.44 MB | 1 年前3
Hello 算法 1.0.0b4 Golang版3.3. 数字编码 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.4. 字符编码 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.5. 小结 . . 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2. 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,因此更易于理解。在本书中,重点和难点知识 例如“归并排序”算法,输入长度为 ? 的数组,每轮递归将数组从中点划分为两半,形成高度为 log ? 的递 归树,使用 ?(log ?) 栈帧空间。 再例如“数字转化为字符串”,输入任意正整数 ? ,它的位数为 log10 ? ,即对应字符串长度为 log10 ? ,因 此空间复杂度为 ?(log10 ?) = ?(log ?) 。 2.3.4. 权衡时间与空间 理想情况下,我们希望算法的时间复0 码力 | 347 页 | 27.40 MB | 1 年前3
Hello 算法 1.0.0b5 Golang版52 3.3 数字编码 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 3.4 字符编码 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.5 小结 . . . 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 对数阶常见于分治算法。例如归并排序,输入长度为 ? 的数组,每轮递归将数组从中点划分为两半,形成高 度为 log ? 的递归树,使用 ?(log ?) 栈帧空间。 再例如将数字转化为字符串,输入一个正整数 ? ,它的位数为 log10 ?+1 ,即对应字符串长度为 log10 ?+1 ,因此空间复杂度为 ?(log10 ? + 1) = ?(log ?) 。 2.4.4 权衡时间与空间 理想情况下,我们希望算法0 码力 | 379 页 | 30.70 MB | 1 年前3
Go Web编程session存储 6.4 预防session劫持 6.5 小结 7.文本文件处理 7.1 XML处理 7.2 JSON处理 7.3 正则处理 7.4 模板处理 7.5 文件操作 7.6 字符串处理 7.7 小结 8.Web服务 8.1 Socket编程 8.2 WebSocket 8.3 REST 8.4 RPC 8.5 小结 9.安全与加密 9.1 预防CSRF攻击 9.2 安装 Go的三种安装方式 Go的三种安装方式 Go有多种安装方式,你可以选择自己喜欢的。这里我们介绍三种最常见的安装方式: Go源码安装:这是一种标准的软件安装方式。对于经常使用Unix类系统的用户,尤其对于开发者来说,从源 码安装是最方便而熟悉的。 Go标准包安装:Go提供了方便的安装包,支持Windows、Linux、Mac等系统。这种方式适合初学者,可根据自 己的系统位数下载好相 在Go的源代码中,有些部分是用Plan 9 C和AT&T汇编写的,因此假如你要想从源码安装,就必须安装C的编译工具。 在Mac系统中,只要你安装了Xcode,就已经包含了相应的编译工具。 在类Unix系统中,需要安装gcc等工具。例如Ubuntu系统可通过在终端中执行sudo apt-get install gcc libc6-dev来安装编译工具。 在Windows系统中,你需要安0 码力 | 295 页 | 5.91 MB | 1 年前3
Hello 算法 1.0.0 Golang版54 3.3 数字编码 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 3.4 字符编码 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.5 小结 . . . 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 第 0 章 前言 hello‑algo.com 5 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视 对数阶常见于分治算法。例如归并排序,输入长度为 ? 的数组,每轮递归将数组从中点处划分为两半,形成 高度为 log ? 的递归树,使用 ?(log ?) 栈帧空间。 再例如将数字转化为字符串,输入一个正整数 ? ,它的位数为 ⌊log10 ?⌋ + 1 ,即对应字符串长度为 ⌊log10 ?⌋ + 1 ,因此空间复杂度为 ?(log10 ? + 1) = ?(log ?) 。 2.4.4 权衡时间与空间 理想情况下,我0 码力 | 382 页 | 17.60 MB | 1 年前3
Hello 算法 1.1.0 Go版54 3.3 数字编码 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 3.4 字符编码 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.5 小结 . . . 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 第 0 章 前言 hello‑algo.com 5 /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 对数阶常见于分治算法。例如归并排序,输入长度为 ? 的数组,每轮递归将数组从中点处划分为两半,形成 高度为 log ? 的递归树,使用 ?(log ?) 栈帧空间。 再例如将数字转化为字符串,输入一个正整数 ? ,它的位数为 ⌊log10 ?⌋ + 1 ,即对应字符串长度为 ⌊log10 ?⌋ + 1 ,因此空间复杂度为 ?(log10 ? + 1) = ?(log ?) 。 2.4.4 权衡时间与空间 理想情况下,我0 码力 | 383 页 | 18.48 MB | 1 年前3
共 41 条
- 1
- 2
- 3
- 4
- 5













