首页 > 代码库 > [Golang]Go Packages

[Golang]Go Packages

----------------------------------------------------------------------------------------------------------- 

程序包
标准类库 其他程序包
     子库
     社区
标准类库

名称   摘要
存档    
     tar   tar包实现了对档案的压缩。
     zip   zip程序包对读写ZIP文档提供支持。
bufio   bufio包实现了输入/输出缓冲。它包含一个io.Reader或io.Writer对象,创建另一个同样实现了接口 但提供缓冲和一些I/O文本帮助的对象(Reader 或 Writer)。
builtin   builtin包为Go预先声明的标识符提供文档。
bytes   bytes包实现了对字节片的操作的方法。
compress    
     bzip2   bzip2包实现了bzip2的解压。
     flate   flate包实现了DEFLATE压缩的数据格式,描述在RFC 1951。
     gzip   gzip包实现了gzip格式压缩文件的读和写,如RFC 1952中规定。
     lzw   lzw包实现了Lempel-Ziv-Welch压缩的数据格式,在T.A.Welch中规定,“一项针对高性能数据压缩的技术”,Computer, 17(6) (June 1984), pp 8-19.
     zlib   zlib包实现了zlib格式压缩数据的读和写,如RFC 1950中规定。
container    
     heap   heap包为实现了heap.Interface的许多类型提供堆操作。
     list   list包实现了一个双链表。
     ring   ring包实现了在循环链表上的操作。
crypto   crypto包收集公共的用密码写的常量。
     aes   aes包实现了AES(高级加密标准)加密(原先的Rijndael),在美国联邦信息处理标准出版197中定义。
     cipher   cipher包实现了标准块密码模式,可以绕在底层块密码的实现。
     des   des包实现了数据加密标准(DES)和三倍的数据加密算法(TDEA),在美国联邦信息标准出版46-3中定义。
     dsa   dsa包实现数字签名算法,如FIPS 186-3中定义。
     ecdsa   ecdsa包实现了椭圆曲线数字签名算法,如FIPS186-3中定义。
     elliptic   elliptic包实现了在基本领域上的几个标准的椭圆曲线。
     hmac   hmac包实现了Keyed-Hash信息认证码(HMAC),在美国联邦信息标准出版198中定义。
     md5   md5包实现了MD5哈希算法,在RFC 1321中定义。
     rand   rand包实现了一个密码安全伪随机数字发生器。
     rc4   rc4包实现了RC4加密,在Bruce Schneier的应用密码学中定义。
     rsa   rsab包实现了RSA加密,在PKCS#1中指出。
     sha1   sha1包实现了SHA1哈希算法,在RFC 3174中定义。
     sha256   sha256包实现了SHA224和SHA256哈希算法,在FIPS 180-4中定义。
     sha512   sha512包实现了SHA384和SHA512哈希算法,在FIPS 180-2中定义。
     subtle   subtle包实现了那些通常在密码中有用的方法,但需要小心思考来正确使用。
     tls   tls包部分实现TLS 1.2,在RFC 5246中指定。
     x509   x509包解析X.509-encoded键和证书。
          pkix   pkix包含有共享,底层结构用于ASN.1解析和序列化X.509证书,CRL和OCSP。
database    
     sql   sql包围绕SQL(或SQL一样)数据库提供一个通用的接口。
          driver   driver包定义了(被sql包使用的数据库驱动实现的)接口。
debug    
     dwarf   dwarf包提供访问从可执行文件中加载的DWARF调试信息,如在DWARF 2.0标准中定义http://dwarfstd.org/doc/dwarf-2.0.0.pdf。
     elf   elf包实现了访问ELF对象文件。
     gosym   gosym包实现了访问 通过gc编译器嵌入到Go二进制模块的Go符号和行号表。
     macho   macho包实现了访问Mach-O对象文件。
     pe   pe包实现了访问PE(微软的Windows可执行文件)文件。
     plan9obj   plan9obj实现了访问Plan 9 a.out对象文件。
encoding   encoding包定义了被由字节级和文本表示转换数据的其它包共享的接口。
     ascii85   ascii85包实现了在btoa工具 和 Adobe的PostScript和PDF文档格式中使用的ascii85数据的编码。
     asn1   asn1包实现了DER-encoded ASN.1数据结构的解析,在ITU-T Rec X.690中定义。
     base32   base32包实现了在RFC 4648中规定的base32编码。
     base64   base64包实现了在RFC 4648中规定的base64编码。
     binary   binary包实现了数值与字节序列间简单的转化并且编码和解码varints(译者注:varints是用一个或多个字节序列化整形的一种方法)。
     csv   csv包读和写逗号分割值(CSV)的文件。
     gob   gob包管理在编码器(发送者)和解码器(接收者)间交换的gobs - binary值流。
     hex   hex包实现了十六进制的编码和解码。
     json   json包实现了在RFC 4627中定义的JSON对象的编码和解码。
     pem   pem包实现了起源于隐私增强邮件的PEM数据的编码。
     xml   xml实现了一个理解XML命名空间的简单XML 1.0解析器。
errors   errors包实现了处理错误的方法。
expvar   expvar包为公共变量提供一个标准的接口,像在服务器的运行计数器。
flag   flag包实现了命令行标识分析。
fmt   fmt包实现了类似于C的printf和scanf的带格式的输入/输出功能。
go    
     ast   ast包为Go包声明了被用来代表语法树的类型。
     build   build包收集有关Go包的信息。
     doc   doc包从Go AST中提取源代码文件。
     format   format包实现了Go本源的标准格式。 implements standard formatting of Go source.
     parser   parser包实现了针对Go源文件的解析器。
     printer   printer包实现了AST节点的打印。
     scanner   scanner实现了针对Go源文本的扫描器。
     token   token包定义了代表Go编程语言词法标记的常量 和 标记的基础操作(printing,predicates)。
hash   hash包为hash方法提供接口。
     adler32   adler32包实现了Adler-32校验。
     crc32   crc32包实现了32位周期垄余检测,或CRC-32(循环冗余码校验)。
     crc64   crc64包实现了64位周期垄余检测,或CRC-64。
     fnv   fnv包实现了FNV-1 和 FNV-1a,Glenn Fowler,Landon Curt Noll和Phong Vo创建的非加密hash方法。
html   html包为转义和非转义HTML文本提供方法。
     template   template (html/template)包实现了 在代码注入之前生成HTML安全输出的 数据驱动模板。
image   image包实现了一个基础的2-D图片库。
     color   color包实现了一个基础的颜色库。
          palette   palette包提供标准的颜色调色板。
     draw   draw包提供图片合成方法。
     gif   gif包实现了一个GIF图片解码器和编码器。
     jpeg   jpeg包实现了一个JPEG图片解码器和编码器。
     png   png包实现了一个PNG图片解码器和编码器。
index    
     suffixarray   suffixarray包实现了在对数时间内使用内存中后缀数组的子串搜索。
io   io包为原始I/O提供了基础的接口。
     ioutil   ioutil包实现了一些I/O实用方法。
log   log实现了一个简单的记录包。
     syslog   syslog包为系统日志服务提供了一个简单的接口。
math   math包提供了基础的常量和数学方法。
     big   big包实现了多精度运算(big numbers)。
     cmplx   cmplx包为复杂的数字提供基础常量和数学方法。
     rand   rand包实现了伪随机数发生器。
mime   mime包实现了部分MIME规范。
     multipart   multipart包实现了MIME多部分解析,如在RFC 2046中定义。
net   net包为网络I/O提供便携式接口,包括TCP/IP,UDP,域名解析,和Unix域套接字。
     http   http包提供HTTP客户端和服务端实现。
          cgi   cgi包实现了CGI(公共网关接口),如在RFC3875中定义。
          cookiejar   cookiejar包实现了一个在内存中的RFC 6265-兼容的http.CookieJar。
          fcgi   fcgi包实现了FastCGI协议。
          httptest   httptest包为HTTP testing 提供实用工具。
          httputil   httputil包提供HTTP实用方法,补充更常见的net/http包。
          pprof   pprof包通过pprof可视化工具为所期望格式的HTTP服务器运行时分析数据提供服务。
     mail   mail包实现了邮件信息的解析。
     rpc   rpc包提供通过网络或其它I/O连接 访问一个对象的输出方法。
          jsonrpc   jsonrpc包为rpc包实现了一个JSON-RPC ClientCodec和ServerCodec。
     smtp   smtp包实现了简单的邮件传输协议,在RFC 5321中定义的。
     textproto   textproto包实现了在HTTP,NNTP和SMTP风格下的通用的基于文本的请求/响应协议的支持。
     url   url包解析URLs并实现了请求转义。
os   os包提供跨平台的接口来操作系统功能。
     exec   exec包运行外部的命令。
     signal   signal包实现了访问输入信号。
     user   user包允许通过name或id进行用户账户查询。
path   path包实现了针对操作斜线分割路径的实用例程。
     filepath   filepath包针对操作文件名路径实现了实用的例程,在某种程度上兼容目标操作系统定义的文件路径。
reflect   reflect包实现了运行时反射,允许一个程序用任意类型来处理对象。
regexp   regexp包实现了正则表达式搜索。
     syntax   syntax包解析正则表达式成解析树并编译解析树到程序中。
runtime   runtime包包含和Go的运行时系统相互作用的操作,就像功能控制概念。
     cgo   cgo包为cgo工具产生的代码提供运行支持。
     debug   debug包包含针对程序运行时的自动调试工具。
     pprof   pprof包使用pprof可视化工具写入所期望格式的运行时分析数据。
     race   race包实现了数据竞争检测逻辑。
sort   sort包为部分排序和用户定义的集合提供原始的。
strconv   strconv包实现了基础数据类型的字符串表示的转换。
strings   strings包实现了操作字符串的简单方法。
sync   sync包提供基础的原始同步,如相互排斥锁。
     atomic   atomic包提供有用的底层原始的原子内存来实现同步算法。
syscall   syscall包包含一个针对底层原始系统操作的接口。
testing   testing包为Go包的自动化测试提供支持。
     iotest   iotest包实现了有用的主要用于测试的读写器。
     quick   quick包实现了用来帮助黑盒测试的实用方法。
text    
     scanner   scanner包为UTF-8编码的文本提供一个扫描仪和分解器。
     tabwriter   tabwriter包实现了一个在输入的对齐文本中转换标签栏的写过滤器(tabwriter.Writer)。
     template   template包实现了为生成文本输出的数据-驱动模板。
          parse   parse包为用text/template和html/template定义的模板创建解析树。
time   time包为测量和显示时间提供功能。
unicode   unicode包提供数据和方法来测试一些Unicode码的性质。
     utf16   utf16包实现了UTF-16序列的编码和解码。
     utf8   utf8包实现了方法和常量来支持UTF-8文本编码。
unsafe   unsafe包包含绕过Go程序类型安全的操作。

Other packagesSub-repositories

这些包是Go项目的一部分,但显示了主要的Go树形结构。它们在比Go核心更宽松的兼容性要求(compatibility requirements)下开发。安装它们使用"go get".
  • crypto — 额外的密码包。
  • image — 额外的图片包。
  • net — 额外的网络包。
  • sys — 为使系统调用的包。
  • text — 处理文本的包。
  • tools — godoc, vet, cover, and other tools.
  • exp — 实验性代码(小心使用; 可能在无警告下变更)

Community

这些服务可以帮你找到由社区提供的开放源代码的程序包。
  • GoDoc - 一个包的索引和搜索引擎.
  • Go Search - 一个代码搜索引擎.
  • Projects at the Go Wiki - Go项目策划名单


@黑眼诗人 <www.chenwei.ws>

译自:http://tip.golang.so/pkg/ (Go官网镜像)

[Golang]Go Packages