Go教程技术文章
-
Go text/template 的 FuncMap 用来把 Go 函数注入模板。本文从解析前注册开始,说明单返回值、值加 error、管道传参和同名替换的边界,并给出可直接改造的模板示例。125 收藏 -
Go unicode.SimpleFold 每次返回 Unicode simple case folding 等价链中的下一个 rune。本文用可终止的回环遍历收集等价字符,并比较它与 ToLower、ToUpper 及 UTF-8 校验的适用边界。428 收藏 -
Go hash/crc64.Update 接收当前 CRC64 值、同一个 Table 和一段字节,返回加入该分块后的新校验值。本文说明怎样按原顺序连续更新,并用 Checksum 对照整块结果,避免每块重置或更换 Table。226 收藏 -
Go unicode/utf16.AppendRune 接收一个 rune,把它的 UTF-16 编码追加到已有的 []uint16 切片并返回扩展后的切片。本文说明如何接回返回值、处理不同码点以及理解非法码点的 U+FFFD 替换。220 收藏 -
Go encoding/base64.AppendEncode 会把 Base64 结果追加到已有字节切片并返回扩展后的切片。本文说明 dst 前缀、EncodedLen 容量预留,以及 StdEncoding、RawStdEncoding 和 URLEncoding 的选择边界。113 收藏 -
用一个有界任务队列说明 Go sync.Cond 的条件等待、关联锁、Wait 循环以及 Signal 与 Broadcast 的选择,重点解释为什么被唤醒后仍要重新检查共享状态。235 收藏 -
sync.OnceFunc 返回的函数不提供是否执行、执行中或初始化成功的查询接口。本文用 atomic.Uint32 设计外部状态,把可观测性与一次性执行职责分开,并处理并发读取与 panic 边界。202 收藏 -
Go strconv.ParseFloat 的 bitSize 选择浮点精度而非小数位数。本文用传感器读数入口说明舍入、范围错误、NaN与无穷大,以及业务上下限的处理。424 收藏 -
Go strconv.AppendQuote 可以把字符串以带引号的转义形式追加到已有 []byte。本文从容量预算、Quote 对比、控制字符和无效 UTF-8 边界出发,给出低分配写法与 Benchmark 记录方法。372 收藏 -
本文用一个升序整数切片说明 Go sort.Find 的比较函数写法、found 结果判断、重复值定位和插入位置边界,重点解释为什么 cmp 必须保持正数、零、负数三段结构。237 收藏 -
Go regexp.QuoteMeta 会转义普通文本中的正则元字符,让用户关键词按字面参与匹配。本文说明如何只转义动态片段、保留固定规则,并区分模式转义与替换模板边界。219 收藏 -
Go mime/multipart 读取 multipart 数据时,NextRawPart 会保留 quoted-printable 等原始传输编码。本文用最小示例说明 boundary 解析、io.EOF 判断、Part 读取和 NextPart 的选择边界。281 收藏 -
Go math/big.Int.Append 可把数字文本追加到字节切片。本文通过记录接口说明返回值接收、缓冲区复用、结果复制及参数错误处理。476 收藏 -
Go maphash.Hash 的哈希结果取决于 Seed 与写入字节序列,而不是字节通过 WriteString 还是 Write 进入。本文说明两条写入路径的等价条件、顺序边界、Reset 用法和 Hasher 中的编码方式。295 收藏 -
Go crypto/x509 CertPool 可以把 PEM 格式的自定义根证书接入 TLS 客户端或证书链验证。本文区分空池与系统池、讲清 AppendCertsFromPEM 的返回值,并给出 RootCAs 与 VerifyOptions.Roots 的配置边界。434 收藏