zero314zero314
  • 一. 计算机组成原理

    • 第一章 计算机系统概述
    • 第二章 数据的表示和运算
    • 第三章 存储系统
    • 第四章 指令系统
    • 第五章 中央处理器
    • 第六章 总线
    • 第七章 输入输出系统
  • 二. 操作系统

    • 操作系统文档
  • 三. 计算机网络

    • 计算机网络文档
  • 四. 数据结构

    • 数据结构文档
  • 五. Linux 学习路线

    • Linux 学习路线图
  • 六. Golang 文档

    • 标准库介绍
    • 高效编程
    • 代码审查
    • 设计模式

1. Archive

  • archive/tar:实现对 tar 存档的访问。
  • archive/zip:支持读取和写入 zip 存档。

2. Arena

  • arena:提供为 Go 值集合分配内存的能力,并可以一次安全地手动释放这些空间。

3. Bufio

  • bufio:实现缓冲 I/O,包装 io.Reader 或 io.Writer 对象,创建另一个对象。

4. Builtin

  • builtin:提供 Go 预定义标识符的文档。

5. Bytes

  • bytes:实现字节片操作的函数。

6. Compress

  • compress/bzip2:实现 bzip2 解压缩。
  • compress/flate:实现 RFC 1951 中描述的 DEFLATE 压缩数据格式。
  • compress/gzip:按照 RFC 1952 的规定,实现 gzip 格式压缩文件的读写。
  • compress/lzw:实现 LempeL-Ziv-Welch 压缩数据格式。
  • compress/zlib:实现 zlib 格式压缩数据的读写,按 RFC 1950 中所规定。

7. Container

  • container/heap:实现 heap.Interface 的任何类型提供堆操作。
  • container/list:实现一个双链表。
  • container/ring:实现环形链表的操作。

8. Context

  • context:定义 Context 类型,它跨 API 边界和进程之间携带截止日期、取消信号和其他请求范围值。

9. Crypto

  • crypto:收集常用的加密常数。
  • crypto/aes:实现 AES 加密(以前称为 Rijndael)。
  • crypto/boring:公开仅在使用 Go+BoringCrypto 构建时可用的函数。
  • crypto/cipher:实现标准的分组密码模式,这些模式可以封装在低级分组密码实现中。
  • crypto/des:实现数据加密标准 (DES) 和三重数据加密算法 (TDEA)。
  • crypto/dsa:实现 FIPS 186-3 中定义的数字签名算法。
  • crypto/ecdh:在 NIST 曲线和 Curve25519 上实现椭圆曲线 Diffie-Hellman。
  • crypto/ecdsa:实现 FIPS 186-4 和 SEC 1 2.0 版中定义的椭圆曲线数字签名算法。
  • crypto/ed25519:实现 Ed25519 签名算法。
  • crypto/elliptic:在素数字段上实现标准 NIST P-224、P-256、P-384 和 P-521 椭圆曲线。
  • crypto/hmac:实现密钥散列消息认证码 (HMAC)。
  • crypto/md5:实现 RFC 1321 中定义的 MD5 哈希算法。
  • crypto/rand:实现密码安全的随机数生成器。
  • crypto/rc4:实现 Bruce Schneier 的应用密码学中定义的 RC4 加密。
  • crypto/rsa:按照 PKCS##1 和 RFC 8017 的规定实现 RSA 加密。
  • crypto/sha1:实现 RFC 3174 中定义的 SHA-1 哈希算法。
  • crypto/sha256:实现 FIPS 180-4 中定义的 SHA224 和 SHA256 散列算法。
  • crypto/sha512:实现 FIPS 180-4 中定义的 SHA-384、SHA-512、SHA-512/224 和 SHA-512/256 哈希算法。
  • crypto/subtle:在密码代码中通常有用但需要仔细考虑才能正确使用的函数。
  • crypto/tls:部分实现 RFC 5246 中规定的 TLS 1.2 和 RFC 8446 中指定的 TLS 1.3。
  • crypto/tls/fipsonly:仅将所有 TLS 配置限制为 FIPS 批准的设置。
  • crypto/x509:实现 X.509 标准的子集。
  • crypto/pkix:包含用于 ASN.1 解析和序列化 X.509 证书、CRL 和 OCSP 的共享低级结构。

10. Database

  • database/sql:围绕 SQL(或类似 SQL)的数据库提供通用接口。
  • database/sql/driver:定义要由包 sql 使用的数据库驱动程序实现的接口。

11. Debug

  • debug/buildinfo:提供对嵌入在 Go 二进制文件中的信息的访问,这些信息是如何构建的。
  • debug/dwarf:提供对从可执行文件加载的 dwarf 调试信息的访问,如 dwarf 2.0 标准中所定义。
  • debug/elf:实现对 ELF 对象文件的访问。
  • debug/gosym:实现对 GC 编译器生成的 Go 二进制文件中嵌入的 Go 符号和行号表的访问。
  • debug/macho:实现对 Mach-O 对象文件的访问。
  • debug/pe:实现对 PE(Microsoft Windows 可移植可执行文件)文件的访问。
  • debug/plan9obj:实现对 Plan 9 a.out 对象文件的访问。

12. Embed

  • embed:提供对运行的 Go 程序中嵌入的文件的访问。

13. Encoding

  • encoding/ascii85:实现 Btoa 工具和 Adobe 的 PostScript 和 PDF 文档格式中使用的 ascii85 数据编码。
  • encoding/asn1:按照 ITU-T Rec X.690 的定义,实现对 DER 编码 ASN.1 数据结构的解析。
  • encoding/base32:实现 RFC 4648 指定的 Base32 编码。
  • encoding/base64:实现 RFC 4648 指定的 Base64 编码。
  • encoding/binary:实现数字和字节序列之间的简单转换以及变量的编码和解码。
  • encoding/csv:读取和写入逗号分隔值 (CSV) 文件。
  • encoding/gob:管理 Gobs 流——编码器(发射器)和解码器(接收器)之间交换的二进制值。
  • encoding/hex:实现十六进制编码和解码。
  • encoding/json:实现 RFC 7159 中定义的 JSON 编码和解码。
  • encoding/pem:实现 PEM 数据编码,该编码源自隐私增强邮件。
  • encoding/xml:实现一个简单的 XML 1.0 解析器,它可以理解 XML 名称空间。

14. Errors

  • errors:实现处理错误的函数。

15. Expvar

  • expvar:为公共变量(如服务器中的操作计数器)提供标准化接口。

16. Flag

  • flag:实现命令行标志解析。

17. Fmt

  • fmt:使用类似于 C 的 printf 和 scanf 的函数实现格式化的 I/O。

18. Go

  • go/ast:声明用于表示 Go 包的语法树的类型。
  • go/build:收集有关 Go 软件包的信息。
  • go/build/constraint:实现构建约束行的解析和求值。
  • go/constant:实现表示非类型化 Go 常量及其相应操作的值。
  • go/doc:从 Go AST 中提取源代码文档。
  • go/comment:实现 Go 文档注释的解析和重新格式化,这些注释直接位于包、const、func、type 或 var 的顶级声明之前。
  • go/format:实现 Go 源代码的标准格式。
  • go/importer:提供对导出数据导入器的访问。
  • go/parser:实现 Go 源文件的解析器。
  • go/printer:实现 AST 节点的打印。
  • go/scanner:实现 Go 源文本的扫描程序。
  • go/token:定义表示 Go 编程语言的词汇标记的常量和基本操作。
  • go/types:声明数据类型并实现 Go 包的类型检查算法。

19. Hash

  • hash:为哈希函数提供接口。
  • hash/adler32:实现 Adler-32 校验和。
  • hash/crc32:实现 32 位循环冗余校验 (CRC-32)。
  • hash/crc64:实现 64 位循环冗余校验 (CRC-64)。
  • hash/fnv:实现 FNV-1 和 FNV-1a 的非加密散列函数。
  • hash/maphash:提供字节序列的哈希函数。

20. HTML

  • html:提供转义和取消转义 HTML 文本的功能。
  • html/template:实现数据驱动模板,用于生成 HTML 输出,防止代码注入。

21. Image

  • image:实现基本的二维图像库。
  • image/color:实现基本颜色库。
  • image/color/palette:提供标准调色板。
  • image/draw:提供图像合成功能。
  • image/gif:实现 GIF 图像解码器和编码器。
  • image/jpeg:实现 JPEG 图像解码器和编码器。
  • image/png:实现 PNG 图像解码器和编码器。

22. Index

  • index/suffixarray:使用内存中的后缀数组,在对数时间内实现子字符串搜索。

23. IO

  • io:提供 I/O 原语的基本接口。
  • io/fs:定义文件系统的基本接口。
  • io/ioutil:实现一些 I/O 实用程序功能。

24. Log

  • log:实现简单的日志记录包。
  • log/syslog:提供系统日志服务的简单界面。

25. Math

  • math:提供基本常数和数学函数。
  • math/big:实现任意精度算术(大数字)。
  • math/bits:实现位计数和操作函数。
  • math/cmplx:为复数提供基本常数和数学函数。
  • math/rand:实现不适合安全敏感工作的伪随机数生成器。

26. Mime

  • mime:实现 MIME 规范的部分功能。
  • mime/multipart:实现 MIME 多部分解析,符合 RFC 2046 中所定义。
  • mime/quotedprintable:实现 RFC 2045 指定的引用可打印编码。

27. Net

  • net:为网络 I/O 提供可移植接口,包括 TCP/IP、UDP、域名解析和 Unix 套接字。
  • net/http:提供 HTTP 客户端和服务器实现。
  • net/http/cgi:实现 RFC 3875 中规定的 CGI(公共网关接口)。
  • net/http/cookiejar:实现符合 RFC 6265 的 HTTP CookieJar。
  • net/http/fcgi:实现 FastCGI 协议。
  • net/http/httptest:提供用于 HTTP 测试的实用程序。
  • net/http/httptrace:提供跟踪 HTTP 客户端请求中事件的机制。
  • net/http/httputil:补充 HTTP 实用工具功能。
  • net/http/pprof:提供 HTTP 运行时性能分析工具,输出格式可被 pprof 可视化工具使用。
  • net/mail:实现邮件消息的解析。
  • net/netip:定义一个小值类型的 IP 地址类型。
  • net/rpc:通过网络或其他 I/O 连接访问对象的导出方法。
  • net/rpc/jsonrpc:为 RPC 包实现 JSON-RPC 1.0。
  • net/smtp:实现 RFC 5321 中定义的简单邮件传输协议。
  • net/textproto:实现基于文本的请求/响应协议的通用支持(例如 HTTP、NNTP 和 SMTP)。
  • net/url:解析 URL 并实现查询转义。

28. OS

  • os:为操作系统功能提供独立于平台的接口。
  • os/exec:运行外部命令。
  • os/signal:实现对输入信号的访问。
  • os/user:允许按名称或 ID 查找用户帐户。

29. Path

  • path:实现用于操作斜杠分隔路径的实用程序例程。
  • path/filepath:以与目标操作系统定义的文件路径兼容的方式操作文件名路径。

30. Plugin

  • plugin:实现 Go 插件的加载和符号解析。

31. Reflect

  • reflect:实现运行时反射,允许程序操作具有任意类型的对象。

32. Regexp

  • regexp:实现正则表达式搜索。
  • regexp/syntax:将正则表达式解析为解析树,并将解析树编译为程序。

33. Runtime

  • runtime:包含与 Go 的运行时系统交互的操作,例如控制 goroutine 的函数。
  • runtime/cgo:包含对 cgo 工具生成的代码的运行时支持。
  • runtime/coverage:提供覆盖率数据操作。
  • runtime/debug:包含程序运行时的调试工具。
  • runtime/metrics:提供接口来访问运行时导出的指标。
  • runtime/pprof:以 pprof 格式记录运行时分析数据。
  • runtime/race:实现数据竞争检测逻辑。
  • runtime/trace:提供生成程序跟踪数据的工具。

34. Sort

  • sort:提供用于排序切片和用户定义集合的工具。

35. Strconv

  • strconv:实现基本数据类型与字符串表示之间的转换。

36. Strings

  • strings:实现操作 UTF-8 编码字符串的简单函数。

37. Sync

  • sync:提供基本的同步原语,例如互斥锁。
  • sync/atomic:提供用于实现同步算法的低级原子内存原语。

38. Syscall

  • syscall:包含低级操作系统原语接口。
  • syscall/js:在 js/wasm 体系结构中访问 WebAssembly 主机环境。

39. Testing

  • testing:为 Go 包的自动测试提供支持。
  • testing/fstest:实现对文件系统的测试。
  • testing/iotest:实现主要用于测试的读写器。
  • testing/quick:提供工具来帮助黑盒测试。

40. Text

  • text/scanner:提供 UTF-8 编码文本的扫描器和标记器。
  • text/tabwriter:实现一个过滤器,将带有制表符的输入转换为对齐的文本。
  • text/template:实现用于生成文本输出的数据驱动模板。
  • text/template/parse:为 text/template 和 html/template 定义的模板构建解析树。

41. Time

  • time:提供测量和显示时间的功能。
  • time/tzdata:提供时区数据库的嵌入版本。

42. Unicode

  • unicode:提供数据和函数来测试 Unicode 代码点的属性。
  • unicode/utf16:实现 UTF-16 序列的编码和解码。
  • unicode/utf8:实现支持 UTF-8 编码文本的函数和常量。

43. Unsafe

  • unsafe:提供 Go 程序中底层内存操作的低级接口。允许程序绕过 Go 类型安全机制直接操作指针和内存地址。
最近更新: 2025/10/2 03:59
Contributors: zero
Next
高效编程