|
学习编程言语,早已不是学一点语法规定那末简略。当初更习气称作选择 Ecosystem(生态圈),而这其中规范库的作用和份量尤其显著。
在Go言语的装置文件里包孕了一些能够间接使用的包,即规范库。Go言语的规范库(通常被称为言语自带的电池),提供了明晰的构建模块和公共接口,包孕 I/O 操作、文本处置、图象、明码学、网络和散布式运用顺序等,并反对许多规范化的文件格局和编解码协定。
在 Windows 下,规范库的地位在Go言语根目录下的子目录 pkg\windowsamd64 中;在 Linux 下,规范库在Go言语根目录下的子目录 pkg\linux_amd64 中(假如是装置的是 32 位,则在 linux_386 目录中)。个别状况下,规范包会寄放在 $GOROOT/pkg/$GOos$GOARCH/ 目录下。
Go言语的编译器也是规范库的一部份,经过词法器扫描源码,使用语法树获取源码逻辑分支等。Go言语的周边工具也是建设在这些规范库上。在规范库上能够实现简直大部份的需要。
Go言语的规范库以包的形式提供反对,下表列出了Go言语规范库中常见的包及其功用。
Go言语规范库包名
功 能
bufio
带缓冲的 I/O 操作
bytes
完成字节操作
container
封装堆、列表和环形列表等容器
crypto
加密算法
database
数据库驱动和接口
debug
各种调试文件格局拜候及调试功用
encoding
常见算法如 JSON、XML、Base64 等
flag
命令行解析
fmt
格局化操作
go
Go言语的词法、语法树、类型等。可经过这个包进行代码信息提取和修正
html
HTML 本义及模板零碎
image
常见图形格局的拜候及生成
io
完成 I/O 原始拜候接口及拜候封装
math
数学库
net
网络库,反对 Socket、HTTP、邮件、RPC、SMTP 等
os
操作零碎平台不依赖平台操作封装
path
兼容各操作零碎的门路操作实用函数
plugin
Go 1.7 参加的插件零碎。反对将代码编译为插件,按需加载
reflect
言语反射反对。能够静态获取代码中的类型信息,获得和修正变量的值
regexp
正则表白式封装
runtime
运转时接口
sort
排序接口
strings
字符串转换、解析及实用函数
time
时直接口
text
文本模板及 Token 词法器
固然,优秀第三方资源也是言语生态圈的首要组成部份。近些年来突起的几门言语中,Go 算是标新立异,大批优秀作品频繁涌现,这也给咱们学习 Go 提供了很好的参照。 |
|