Go教程技术文章
-
Go reflect.TypeFor可直接取得泛型类型参数的反射类型。本文对比TypeOf动态值语义,提供批次外构建类型计划的示例,说明字段元数据复用、兼容写法和分配结论的边界。390 收藏 -
Go SHA-512 的 Sum 会在已有切片末尾追加二进制摘要。通过报文前缀示例区分 Write 输入与结果前缀,说明返回值、长度容量、摘要区间和十六进制文本的不同。389 收藏 -
介绍 Go Colly 使用 colly.Context 在 OnRequest、OnHTML、OnResponse 和 OnError 之间传递请求级业务信息,说明 Request.Visit 的继承、Clone 的隔离边界,以及与标准库 context.Context 的职责区别。389 收藏 -
Go strconv.AppendBool 会把 true 或 false 直接追加到已有 []byte,并返回可能扩容后的切片。本文用配置行构建器说明返回值、缓冲区复用、结果所有权,以及它与 FormatBool 的选择边界。389 收藏 -
用 Go 标准库 fs.FileInfoToDirEntry 把已有 FileInfo 适配为 DirEntry,说明 Name、IsDir、Type、Info 的映射关系,以及 nil 输入、类型断言和 Info 错误的处理边界。389 收藏 -
Go reflect.Value.SetIterKey 用于把 MapRange 当前条目的键写入可设置的 Value。本文说明 MapIter.Next、键类型可赋值、CanSet 与迭代器状态边界,并对比 Set(iter.Key()) 的使用方式。389 收藏 -
用 go-colorful 的 BlendHcl 在 HCL 空间混合两个颜色,解释色相插值、IsValid 色域判断和 Clamped 边界处理,适合生成更自然的颜色渐变。389 收藏 -
接收用户提供的文件路径时,先用 filepath.IsLocal 做词法边界判断,可以拒绝绝对路径、空路径、父目录逃逸意图以及 Windows 保留名,再安全地拼接工作目录。本文用一个可复用的 Go 示例说明校验、Join 和真实文件操作之间的边界,并提醒 IsLocal 不会解析符号链接。389 收藏 -
Go fmt.Formatter 通过 Format(fmt.State, rune) 接管自定义类型的格式化。本文从最小实现开始,说明怎样读取动词、宽度、精度和标志,并排查递归调用与未知动词问题。388 收藏 -
Go 反射更新结构体字段时,reflect.Value.SetZero 可以把可设置值恢复为其类型零值。本文用字段更新场景说明 CanSet、指针 Elem、未导出字段和 map/slice 清空之间的边界。388 收藏 -
Go os.ReadDir 会返回按文件名排序的 fs.DirEntry 清单;本文说明 DirEntry 与 Info 的分工、部分读取错误,以及大目录使用 File.ReadDir(n) 的实现边界。388 收藏 -
Golang · Go教程 | 2星期前 | 标准库 · 性能优化 · url · Go教程 · Go net/url []byte URL.String URL.AppendBinary URL.MarshalBinary
Go net/url 的 URL.AppendBinary 可以把 URL 文本追加到已有 []byte,并把返回切片交给后续协议或日志写入。本文说明正确接住返回值、处理错误、复制长期数据,以及它和 URL.String、MarshalBinary 的选择边界。388 收藏 -
在 Go 中使用 Gonum mat 求解线性方程组时,不必先计算 A 的逆矩阵。本文从 A·X=B 的形状入手,用 Dense.Solve 处理单个和多个右端项,并给出 Condition 错误、维度排查与残差确认方法。388 收藏 -
go mod graph 会把模块需求图按一行一条边打印出来,适合查看主模块、传递依赖、版本要求和 replace 后的关系。本文说明输出格式、筛选方法,以及它和 go list -m all、go mod why 的区别。388 收藏 -
Go crypto/aes 不会替业务配置自动处理可选字段:密钥始终必填,GCM 的 nonce 按模式决定是调用方提供还是由随机封装生成,AAD 可以为空但解密必须保持一致。本文用一个小型配置入口拆清缺省字段的判断、错误和适用边界。388 收藏