本文是全系列中第11 / 62篇:Go语言高级编程
- Go语言高级编程-序言致谢
- Go语言高级编程-Advanced Go Programming
- Go语言高级编程-第 1 章 语言基础
- Go语言高级编程-1.1 Go 语言创世纪
- Go语言高级编程-1.2 Hello, World 的革命
- Go语言高级编程-1.3 数组、字符串和切片
- Go语言高级编程-1.4 函数、方法和接口
- Go语言高级编程-1.5 面向并发的内存模型
- Go语言高级编程-1.6 常见的并发模式
- Go语言高级编程-1.7 错误和异常
- Go语言高级编程-第 2 章 CGO 编程
- Go语言高级编程-2.1 快速入门
- Go语言高级编程-2.2 CGO 基础
- Go语言高级编程-2.3 类型转换
- Go语言高级编程-2.4 函数调用
- Go语言高级编程-2.5 内部机制
- Go语言高级编程-2.6 实战: 封装 qsort
- Go语言高级编程-2.7 CGO 内存模型
- Go语言高级编程-2.8 C++ 类包装
- Go语言高级编程-2.9 静态库和动态库
- Go语言高级编程-2.10 编译和链接参数
- Go语言高级编程-第 3 章 Go 汇编语言
- Go语言高级编程-3.1 快速入门
- Go语言高级编程-3.2 计算机结构
- Go语言高级编程-3.3 常量和全局变量
- Go语言高级编程-3.4 函数
- Go语言高级编程-3.5 控制流
- Go语言高级编程-3.6 再论函数
- Go语言高级编程-3.7 汇编语言的威力
- Go语言高级编程-3.8 例子:Goroutine ID
- Go语言高级编程-3.9 Delve 调试器
- Go语言高级编程-第 4 章 RPC 和 Protobuf
- Go语言高级编程-4.1 RPC 入门
- Go语言高级编程-4.2 Protobuf
- Go语言高级编程-4.3 玩转 RPC
- Go语言高级编程-4.4 gRPC 入门
- Go语言高级编程-4.5 gRPC 进阶
- Go语言高级编程-4.6 gRPC 和 Protobuf 扩展
- Go语言高级编程-4.7 pbgo: 基于 Protobuf 的框架
- Go语言高级编程-4.8 grpcurl 工具
- Go语言高级编程-第 5 章 go 和 Web
- Go语言高级编程-5.1 Web 开发简介
- Go语言高级编程-5.2 router 请求路由
- Go语言高级编程-5.3 中间件
- Go语言高级编程-5.4 validator 请求校验
- Go语言高级编程-5.5 Database 和数据库打交道
- Go语言高级编程-5.6 Ratelimit 服务流量限制
- Go语言高级编程-5.7 layout 常见大型 Web 项目分层
- Go语言高级编程-5.8 接口和表驱动开发
- Go语言高级编程-5.9 灰度发布和 A/B test
- Go语言高级编程-5.10 补充说明
- Go语言高级编程-第 6 章 分布式系统
- Go语言高级编程-6.1 分布式 id 生成器
- Go语言高级编程-6.2 分布式锁
- Go语言高级编程-6.3 延时任务系统
- Go语言高级编程-6.4 分布式搜索引擎
- Go语言高级编程-6.5 负载均衡
- Go语言高级编程-6.6 分布式配置管理
- Go语言高级编程-6.7 分布式爬虫
- Go语言高级编程-6.8 补充说明
- Go语言高级编程-附录B:有趣的代码片段
- Go语言高级编程-附录A:Go语言常见坑
过去的经验往往是走向未来的枷锁,因为在过气技术中投入的沉没成本会阻碍人们拥抱新技术。——chai2010
曾经一度因未能习得 C++ 令人眼花缭乱的新标准而痛苦不已;Go 语言 “少既是多” 大道至简的理念让我重拾信心,寻回了久违的编程乐趣。——Ending
C/C++ 经过几十年的发展,已经积累了庞大的软件资产,它们很多久经考验而且性能已经足够优化。Go 语言必须能够站在 C/C++ 这个巨人的肩膀之上,有了海量的 C/C++ 软件资产兜底之后,我们才可以放心愉快地用 Go 语言编程。C 语言作为一个通用语言,很多库会选择提供一个 C 兼容的 API,然后用其他不同的编程语言实现。Go 语言通过自带的一个叫 CGO 的工具来支持 C 语言函数调用,同时我们可以用 Go 语言导出 C 动态库接口给其它语言使用。本章主要讨论 CGO 编程中涉及的一些问题。
本文是全系列中第11 / 62篇:Go语言高级编程
- Go语言高级编程-序言致谢
- Go语言高级编程-Advanced Go Programming
- Go语言高级编程-第 1 章 语言基础
- Go语言高级编程-1.1 Go 语言创世纪
- Go语言高级编程-1.2 Hello, World 的革命
- Go语言高级编程-1.3 数组、字符串和切片
- Go语言高级编程-1.4 函数、方法和接口
- Go语言高级编程-1.5 面向并发的内存模型
- Go语言高级编程-1.6 常见的并发模式
- Go语言高级编程-1.7 错误和异常
- Go语言高级编程-第 2 章 CGO 编程
- Go语言高级编程-2.1 快速入门
- Go语言高级编程-2.2 CGO 基础
- Go语言高级编程-2.3 类型转换
- Go语言高级编程-2.4 函数调用
- Go语言高级编程-2.5 内部机制
- Go语言高级编程-2.6 实战: 封装 qsort
- Go语言高级编程-2.7 CGO 内存模型
- Go语言高级编程-2.8 C++ 类包装
- Go语言高级编程-2.9 静态库和动态库
- Go语言高级编程-2.10 编译和链接参数
- Go语言高级编程-第 3 章 Go 汇编语言
- Go语言高级编程-3.1 快速入门
- Go语言高级编程-3.2 计算机结构
- Go语言高级编程-3.3 常量和全局变量
- Go语言高级编程-3.4 函数
- Go语言高级编程-3.5 控制流
- Go语言高级编程-3.6 再论函数
- Go语言高级编程-3.7 汇编语言的威力
- Go语言高级编程-3.8 例子:Goroutine ID
- Go语言高级编程-3.9 Delve 调试器
- Go语言高级编程-第 4 章 RPC 和 Protobuf
- Go语言高级编程-4.1 RPC 入门
- Go语言高级编程-4.2 Protobuf
- Go语言高级编程-4.3 玩转 RPC
- Go语言高级编程-4.4 gRPC 入门
- Go语言高级编程-4.5 gRPC 进阶
- Go语言高级编程-4.6 gRPC 和 Protobuf 扩展
- Go语言高级编程-4.7 pbgo: 基于 Protobuf 的框架
- Go语言高级编程-4.8 grpcurl 工具
- Go语言高级编程-第 5 章 go 和 Web
- Go语言高级编程-5.1 Web 开发简介
- Go语言高级编程-5.2 router 请求路由
- Go语言高级编程-5.3 中间件
- Go语言高级编程-5.4 validator 请求校验
- Go语言高级编程-5.5 Database 和数据库打交道
- Go语言高级编程-5.6 Ratelimit 服务流量限制
- Go语言高级编程-5.7 layout 常见大型 Web 项目分层
- Go语言高级编程-5.8 接口和表驱动开发
- Go语言高级编程-5.9 灰度发布和 A/B test
- Go语言高级编程-5.10 补充说明
- Go语言高级编程-第 6 章 分布式系统
- Go语言高级编程-6.1 分布式 id 生成器
- Go语言高级编程-6.2 分布式锁
- Go语言高级编程-6.3 延时任务系统
- Go语言高级编程-6.4 分布式搜索引擎
- Go语言高级编程-6.5 负载均衡
- Go语言高级编程-6.6 分布式配置管理
- Go语言高级编程-6.7 分布式爬虫
- Go语言高级编程-6.8 补充说明
- Go语言高级编程-附录B:有趣的代码片段
- Go语言高级编程-附录A:Go语言常见坑