Golang 101(Go语言101 中文版) v1.21.a第6章:基本类型和它们的字面量表示 第7章:常量和变量 - 顺便介绍了类型不确定值和类型推断 第8章:运算操作符 - 顺便介绍了更多的类型推断规则 第9章:函数声明和调用 第10章:代码包和包引入 第11章:表达式、语句和简单语句 第12章:基本流程控制语法 第13章:协程、延迟函数调用、以及恐慌和恢复 Go类型系统 第14章:Go类型系统概述 - 精通Go编程必读 第15章:指针 第16章:结构体 第17章:值部 第17章:值部 - 为了更容易和更深刻地理解Go中的各种值 第18章:数组、切片和映射 - Go中的首要容器类型 第19章:字符串 第20章:函数 - 函数类型和函数值,以及变长参数个数函数 第21章:通道 - Go特色的并发同步方式 第22章:方法 第23章:接口 - 通过包裹不同具体类型的非接口值来实现反射和多态 第24章:类型内嵌 - 不同于继承的类型扩展方式 第25章:非类型安全指针 第26章:泛型 如何使用和解读组合类型 第27章:反射 - reflect标准库包中提供的反射支持 一些专题 第28章:代码断行规则 第29章:更多关于延迟函数调用的知识点 第30章:一些恐慌/恢复用例 第31章:详解panic/recover原理 - 也解释了什么是“函数退出阶段” 第32章:代码块和标识符作用域 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除 并发编程 第36章:并发同步概述0 码力 | 608 页 | 1.08 MB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a第6章:基本类型和它们的字面量表示 第7章:常量和变量 - 顺便介绍了类型不确定值和类型推断 第8章:运算操作符 - 顺便介绍了更多的类型推断规则 第9章:函数声明和调用 第10章:代码包和包引入 第11章:表达式、语句和简单语句 第12章:基本流程控制语法 第13章:协程、延迟函数调用、以及恐慌和恢复 Go类型系统 第14章:Go类型系统概述 - 精通Go编程必读 第15章:指针 第16章:结构体 第17章:值部 第17章:值部 - 为了更容易和更深刻地理解Go中的各种值 第18章:数组、切片和映射 - Go中的首要容器类型 第19章:字符串 第20章:函数 - 函数类型和函数值,以及变长参数个数函数 第21章:通道 - Go特色的并发同步方式 第22章:方法 第23章:接口 - 通过包裹不同具体类型的非接口值来实现反射和多态 第24章:类型内嵌 - 不同于继承的类型扩展方式 第25章:非类型安全指针 第26章:泛型 如何使用和解读组合类型 第27章:反射 - reflect标准库包中提供的反射支持 一些专题 第28章:代码断行规则 第29章:更多关于延迟函数调用的知识点 第30章:一些恐慌/恢复用例 第31章:详解panic/recover原理 - 也解释了什么是“函数退出阶段” 第32章:代码块和标识符作用域 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除 并发编程 第36章:并发同步概述0 码力 | 821 页 | 956.82 KB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a第6章:基本类型和它们的字面量表示 第7章:常量和变量 - 顺便介绍了类型不确定值和类型推断 第8章:运算操作符 - 顺便介绍了更多的类型推断规则 第9章:函数声明和调用 第10章:代码包和包引入 第11章:表达式、语句和简单语句 第12章:基本流程控制语法 第13章:协程、延迟函数调用、以及恐慌和恢复 Go类型系统 第14章:Go类型系统概述 - 精通Go编程必读 第15章:指针 第16章:结构体 第17章:值部 第17章:值部 - 为了更容易和更深刻地理解Go中的各种值 第18章:数组、切片和映射 - Go中的首要容器类型 第19章:字符串 第20章:函数 - 函数类型和函数值,以及变长参数个数函数 第21章:通道 - Go特色的并发同步方式 第22章:方法 第23章:接口 - 通过包裹不同具体类型的非接口值来实现反射和多态 第24章:类型内嵌 - 不同于继承的类型扩展方式 第25章:非类型安全指针 第26章:泛型 如何使用和解读组合类型 第27章:反射 - reflect标准库包中提供的反射支持 一些专题 第28章:代码断行规则 第29章:更多关于延迟函数调用的知识点 第30章:一些恐慌/恢复用例 第31章:详解panic/recover原理 - 也解释了什么是“函数退出阶段” 第32章:代码块和标识符作用域 目录 2 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除0 码力 | 591 页 | 21.40 MB | 1 年前3
Go语言基础
Golang Fundaments– 我们可以用更多的硬件来解决这个问题。 – 我们可以让更多的开发人员来解决这个问题。 • 有趣的问题——它们对你意味着什么? – 这是一个好的程序吗? – 这是一个有效的程序吗? – 是正确的吗? – 按时完成了吗? – 花了成本(时间、空间复杂度)? • 渴望成为质量、效率和简单的冠军。 • 有自己的观点。 • 重视反省和自我检讨。 Go语言应该是这样的 • 易于阅读代码 Golang-设计哲学 • 面向数据的设计(Data-Oriented Design) “数据占主导地位。如果您选择了正确的数据结构,并 且组织得很好,那么算法几乎总是不言自明的。数据结 构,而不是算法,是编程的核心。”——罗伯•派克 • 接口和组合设计(Interface And Composition Design) – 接口赋予程序结构。 – 接口鼓励通过组合进行设计。 – 接口使得并强制清晰划分组件职责。 Golang-设计哲学 • 实用主义的语言风格 – 面向编译器的静态类型语言 • 数据类型必须在编译阶段确定 • 语言能充分发挥编译优化技术 – 复古且简便的语言 • 集合了多种语言实用的语法表示 • 函数是一等公民(First-Class Functions) • 抛弃了面向对象 – 开放(几乎所有资源都在github上) • 语法基本特点 – C 语言的身体(语法基本类似C语言) – Python0 码力 | 21 页 | 851.30 KB | 1 年前3
Go读书会第二期Go 读书会第二期 白明 《 Go 语言精进之路》作者 tonybai.com 博主 目 录 写书的历程 0 1 Go 语言精进之路导读 0 2 我是怎么读书的 0 3 写书的历程 第一部分 程序员的“小目标”与写书三要素 写书三要素 写书 <- 能力 +意愿 + 机会 过程 写书不易,写高质量的书更难 2018 年下 旬开始动笔 2020 年 11 月下旬 初稿交付 Part1 - 进入 Go 语言编程思维导引 站在语言设计者的高度理解 Go 的与众不同 Go 诞生 与演进 Go 设计哲 学 Go 编程思 维举例 怎么学习 Go 思维? 学习本质是一种模仿。要学习 Go 思维,就要 去模仿 go 团队、 go 社区的优秀项目和代 码,看看他们怎么做的 践行哲学,遵循惯例,认清本质,理解原理 Part2 – 项目基础:布局、代码风格与命名 践行哲学,遵循惯例,认清本质,理解原理 Go 代码都会用到的 • Go 包导入相关 • 代码块与作用域 • 控制语句的惯用法与坑 Part4 – 语法基础:函数与方法 践行哲学,遵循惯例,认清本质,理解原理 • Init 函数 • 成为“一等公民” • defer 的惯用法与坑 • 变长参数函数妙用 • 方法的本质、 receiver 参数类型选择、方法集 合 Go 程序逻辑的基本承载单元 Part5 – 语法核心:接口0 码力 | 26 页 | 4.55 MB | 1 年前3
Golang大规模云原生应用管理实践插入:策略(Policy)与机制(Mechanism) 策略是做事的一组概念和计 划,关注要做什么事 “what” 机制是获取结果的过程, 方法和系统,关注如何做事 “how” • 员工进入公司需要验证是一个策略,人脸识别是机制; • 从杭州到上海是策略,坐火车是机制; • 接口是策略,实现是机制; • 声明是策略,过程是机制; • 策略面向外部交互,机制面向内部实现; • 策略追求开放标准,机制追求稳定可复用; Promethues Knative Ingress Rook Kube eventer … 策略 机制 Jaeger 实例 调度策略 链路 K8s及云原生生态给 开发者提供的是机制 开发者直接使用K8s的失败故事 • 认知成本高:K8s功能强大却没有统一的使用方式,不得不学习复杂的声明字段和各种奇怪的Annotation; • 稳定性不足:没有设置Pod的QoS等级, Controller-Manager, Kubelet,等组件都具有一定复杂度,无法做到定期升 级以维持安全,高可用,高性能的状态; • … 能力复用 自动化 可观测 稳定 安全 开发者真正想要的是策略:大象无形的基础设施,坚如磐石的中间件,丰富高效的应用PaaS平台 基础设施 云原生PaaS平台提供应用管理策略 基础设施 K8s 云原生生态(CNCF) 云原生应用 4 6 7 20 码力 | 23 页 | 7.70 MB | 1 年前3
Go 入门指南(The way to Go)识点组织成系统化的概念和技术分类 来进行讲解。 随着软件规模的不断扩大,诸多的学者和谷歌的开发者们在公司内部的软件开发过程中开始经历大量的挫 折,在诸多问题上都不能给出令人满意的解决方案,尤其是在使用 C++ 来开发大型的服务端软件时,情 况更是不容乐观。由于二进制文件一般都是非常巨大的,因此需要耗费大量的时间在编译这些文件上,同 时编程语言的设计思想也已经非常陈旧,这些情况都充分证明了现有的编程语言已不符合时下的生产环 Java 这类语言的高性能和安全性。 Go 语言出现的目的是希望在编程领域创造最实用的方式来进行软件开发。它并不是要用奇怪的语法和晦 涩难懂的概念来从根本上推翻已有的编程语言,而是建立并改善了 C、Java、C# 中的许多语法风格。它提 倡通过接口来针对面向对象编程,通过 goroutine 和 channel 来支持并发和并行编程。 这本书是为那些想要学习 Go 这门全新的,迷人的和充满希望的编程语言的开发者量身定做的。当然,你 环境(第 3 章)。 在本书的第二部分,我们将会带领你贯穿 Go 语言的核心思想,譬如简单与复杂类型(第 4、7、8 章), 控制结构(第 5 章),函数(第 6 章),结构与方法(第 10 章)和接口(第 11 章)。我们会对 Go 语 言的函数式和面向对象编程进行透彻的讲解,包括如何使用 Go 语言来构造大型项目(第 9 章)。 在本书的第三部分,你将会学习到如何处理不同格式的文件(第 120 码力 | 380 页 | 2.97 MB | 1 年前3
Go 入门指南(The way to Go)测试多返回值函数的错误 5.3 switch 结构 5.4 for 结构 5.5 Break 与 continue 5.6 标签与 goto 第6章:函数(function) 6.1 介绍 6.2 函数参数与返回值 6.3 传递变长参数 6.4 defer 和追踪 6.5 内置函数 6.6 递归函数 6.7 将函数作为参数 6.8 闭包 6.9 应用闭包:将函数作为返回值 应用闭包:将函数作为返回值 6.10 使用闭包调试 6.11 计算函数执行时间 6.12 通过内存缓存来提升性能 第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 第二个例子:读和写 11.9 空接口 11.10 反射包 11.11 Printf 和反射 11.12 接口与动态类型 11.13 总结:Go 中的面向对象 11.14 结构体、集合和高阶函数 第12章:读写数据 12.1 读取用户的输入 12.2 文件读写 12.3 文件拷贝 12.4 从命令行读取参数 12.5 用 buffer 读取文件 - 4 - 本文档使用 书栈(BookStack0 码力 | 466 页 | 4.44 MB | 1 年前3
Go Web编程意分享,和大家一起分享Go写Web应用的一些东西。 对于从PHP/Python/Ruby转过来的同学了解Go怎么写Web应用开发的 对于从C/C++转过来的同学了解Web到底是怎么运行起来的 我一直认为知识是用来分享的,让更多的人分享自己拥有的一切知识这个才是人生最大的快乐。 这本书目前我放在Github上,我现在基本每天晚上抽空会写一些,时间有限、能力有限,所以希望更多的朋友参与到 代码文件置于src目录之下。每小节代码按目录存放。如第11章的第3节的代码保存于src/11.3/ src/11.3/目录下。在正文中按 需要添加代码。 格式规范 格式规范 正文 正文 请参看已有章节的规范,要注意的是,每个章节在底部都需要有一个links节,包含“目录”,“上一节”和“下一 节”的链接。 代码 代码 代码要go fmt后提交。注释文件注明其所属章节。 如何编译 如何编译 build 1.1. Go安装 1.2. GOPATH 与工作空间 1.3. Go 命令 1.4. Go开发工具 1.5. 小结 2.Go语言基础 2.1. 你好,Go 2.2. Go基础 2.3. 流程和函数 2.4. struct 2.5. 面向对象 2.6. interface 2.7. 并发 2.8. 小结 3.Web基础 3.1 web工作方式 3.2 Go搭建一个简单的web服务 3.30 码力 | 295 页 | 5.91 MB | 1 年前3
Go基础语法宝典slice slice 有一些简便的操作 slice 有几个有用的内置函数 map make 、 new 操作 零值 流程控制 if goto for switch 函数 函数的定义 多个返回值 变参 传值与传指针 defer 函数作为值、类型 Panic和Recover main 函数和 init 函数 import 1、相对路径 2、绝对路径 特殊的import 的匿名字段 method method 指针作为receiver method继承 method重写 interface 什么是interface interface类型 interface值 空interface interface函数参数 interface变量存储的类型 嵌入interface 反射 并发 goroutine channels Buffered Go语言设计的关键字,了解这些关键字有助于命名变量的冲突避免 go的二十五个关键字 简介 var 和 const 是 Go语言基础里面的变量和常量申明 package 和 import 用于分包和导入 func 用于定义函数和方法 return 用于从函数返回 defer 用于类似析构函数 go 用于并发 select 用于选择不同类型的通讯 interface 用于定义接口 struct0 码力 | 47 页 | 1020.34 KB | 1 年前3
共 82 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9













