Go教程技术文章
-
Go database/sql.NamedArg 可以把业务参数名和值一起传给数据库接口,但 SQL 占位符语法和驱动支持仍需匹配。本文用查询、重复引用和排错示例说明命名参数的正确边界。311 收藏 -
Go reflect 中,IsValid 判断 Value 是否有效,IsZero 判断有效值是否为其类型的零值。本文用字段查找、nil 接口和指针示例说明两者的调用顺序与 panic 边界。311 收藏 -
Go 1.27 可通过 tls.Config.CurvePreferences 显式加入 tls.MLKEM1024;列表是支持集合,不能替代双方能力协商。311 收藏 -
用指针与Elem准备Go reflect.Value.Set的目标存储,区分CanAddr和CanSet,给出受限赋值函数,并说明类型可赋、未导出字段、接口槽位及批量配置的处理边界。311 收藏 -
Go NATS 客户端要让多个订阅者分担同一主题消息,应使用 QueueSubscribe 并让主题和队列组名完全一致。本文区分普通订阅、队列组与 JetStream 的边界,说明重复消费和可靠性误判的排查方法。311 收藏 -
Go go-smtp 可以通过 DialStartTLS 把已有的 SMTP 主机连接升级为 TLS,再在同一个 Client 上完成认证和发信。本文说明 tls.Config、587 与 465 端口、已有 net.Conn 以及关闭连接时的边界。311 收藏 -
Go strings.Clone 会为非空字符串创建新的数据副本,适合长期保存小片段、避免继续保留大输入的场景;本文说明它的使用边界、空字符串行为、版本要求和 profiling 取舍。311 收藏 -
bytes.CutPrefix 返回原字节切片的视图。本文展示怎样复用输入工作区、将载荷复制到已有目标空间,以及在跨轮或异步保存时正确建立独立结果。311 收藏 -
Go slog.ReplaceAttr 的 groups 参数表示当前叶子属性所在的打开分组路径。本文用根属性、嵌套分组和定向脱敏示例说明如何按路径判断,避免误删同名字段。311 收藏 -
以旧式回调遍历迁移为场景,使用 Go 1.23 的 range over func 和 iter.Seq 实现可提前停止的函数迭代器,并说明 yield=false、版本和资源边界。311 收藏 -
用独立HTTP入口暴露Go批处理指标,启动时注册固定计数器并批末合并,说明权限、采集口径、分配开销与失败处理边界。311 收藏 -
通过带业务字段的 QuotaError 示例,说明 Go errors.Is 自定义 Is 方法的浅比较规则、%w 包装、目标方向与 typed nil 的处理。310 收藏 -
用 go-chart/v2 的 TimeSeries 传入时间点和数值,再配置 XAxis 的时间格式化器;同时说明排序、时区、刻度格式和数据长度不一致时怎样排查。310 收藏 -
Go go-mp3 的 Seek 面向解码后的 PCM 字节流,不是 MP3 压缩文件偏移。本文说明如何使用可定位输入、按4字节 sample 边界换算偏移,并处理 Length=-1 与跳转后的 Read。310 收藏 -
Go的字符串可包含任意字节,UTF-8入口应先限制大小并取得完整文本,再用unicode/utf8.Valid拒绝无效输入。本文给出纯文本Handler与字节偏移诊断示例,说明分块读取、合法替代字符及有损修复的边界。310 收藏