不灭的焱

加密类型:SHA/AES/RSA下载Go
复合类型:切片(slice)、映射(map)、指针(pointer)、函数(function)、通道(channel)、接口(interface)、数组(array)、结构体(struct) Go类型+零值nil
引用类型:切片(slice)、映射(map)、指针(pointer)、函数(function)、通道(channel) Go引用

作者:AlbertWen  添加时间:2025-11-25 12:25:41  修改时间:2025-12-15 03:24:55  分类:02.Go语言编程  编辑

当你在 struct 中定义字段时,到底该用 Entry(值)、*Entry(指针)、[]Entry(值切片)还是 []*Entry(指针切片)?

作者:AlbertWen  添加时间:2025-11-25 11:49:52  修改时间:2025-12-16 01:18:23  分类:02.Go语言编程  编辑

“在 Go 中,我应该使用 (s T) 还是 (s *T)?”

这恐怕是 Go 开发者(无论新手还是老手)最常问的问题之一。一个错误的选择可能导致代码功能出错、性能低下,或者引入难以察觉的并发 Bug。

作者:AlbertWen  添加时间:2025-11-25 01:13:12  修改时间:2025-12-14 03:27:40  分类:02.Go语言编程  编辑

在 Go 语言中,接口类型参数使用指针(*Interface)是极罕见的例外场景,绝大多数情况下接口参数都直接用值类型(Interface)。只有当满足以下特定条件时,才需要为接口参数声明指针类型,核心逻辑是:当你需要修改 “接口变量本身”(而非其指向的底层值)时

作者:AlbertWen  添加时间:2025-11-25 00:03:30  修改时间:2025-12-11 19:20:40  分类:02.Go语言编程  编辑

要理解为什么 context.Context 作为方法 / 函数参数时不需要指针类型,核心在于 context.Context 的设计本质 —— 它是一个接口类型,且 Go 语言中接口的传参规则、Context 接口的实现特性共同决定了这一点。

作者:AlbertWen  添加时间:2025-11-24 12:22:14  修改时间:2025-12-19 14:58:28  分类:02.Go语言编程  编辑

在 Go 语言中,context 包是处理 goroutine 生命周期、传递请求范围元数据(如超时时间、取消信号)的核心工具,尤其适用于分布式系统或复杂并发场景。

作者:AlbertWen  添加时间:2025-11-20 18:49:32  修改时间:2025-12-16 12:09:39  分类:02.Go语言编程  编辑

在 Go 语言中,select 语句用于处理多个通道的操作,它可以同时等待多个通道的读写事件,并在其中一个通道就绪时执行对应的分支。select 的用法类似于 switch,但专门用于通道操作,是并发编程中非常重要的工具。

作者:AlbertWen  添加时间:2025-11-19 18:50:10  修改时间:2025-12-19 12:59:17  分类:02.Go语言编程  编辑

go mod tidy 是 Go 模块(Go Modules)核心命令之一,其核心作用是自动整理项目的依赖关系,让 go.mod 和 go.sum 文件与项目实际代码中的依赖需求保持一致,是管理 Go 项目依赖的高频基础操作。

作者:AlbertWen  添加时间:2025-11-19 16:07:32  修改时间:2025-12-19 16:05:40  分类:02.Go语言编程  编辑

Protocol Buffers(简称 Protobuf)是 Google 开源的语言中立、平台中立、可扩展的结构化数据序列化机制,用于在不同系统(进程、服务、语言)间高效传输和存储数据。相比 JSON、XML 等文本格式,Protobuf 具有更小的体积、更快的解析速度、更强的类型约束,是微服务、跨语言通信、数据存储场景的主流选择。

作者:AlbertWen  添加时间:2025-11-17 01:10:29  修改时间:2025-12-17 16:01:23  分类:02.Go语言编程  编辑

由于有命名返回值,return 语句可以不带参数,这时会返回命名返回值的当前值。但由于命名返回值是 _,无法显式赋值,所以这里返回的是类型 E 的零值。

作者:AlbertWen  添加时间:2025-11-16 17:59:55  修改时间:2025-12-04 13:08:58  分类:02.Go语言编程  编辑

现在,我们是时候来学习一下 Go 迭代器的原理了,让我们更进一步,探究迭代器的本质,以此来彻底掌握 Go 迭代器特性。