为什么选择Go语言?
- 执行效能
- 开发效率
Go语言能做什么?
- 服务器编程
- 分布式系统、数据库代理器、中间件
- 网络编程,包括Web应用、API应用、下载应用
- 数据库操作
- 开发云平台
Go语言环境搭建
Golang的官方网站:golang.org/ (中国地区无法阅览)
Golang的中文网址:golang.google.cn/
第一个程序Hello World
1.编写代码
package main
import "fmt"
func main(){
fmt.Println("Hello,World")
}
2.执行go程序
- 使用go run命令
- 使用go build命令
import操作
- 点操作
import(
."fmt"
)
使用这个包的函数,可以省略前缀的包名。例如:fmt.Println("Hello,World")可以写成Println("Hello,World")
- 别名操作
import(
f"fmt"
)
f.Println("Hello,World")
- _操作 引入包
Go的源码文件
命令源码文件、库源码文件、测试源码文件
命令源码文件:可以单独运行,单独放在一个代码包中
库源码文件:不具备上述两个特征的源码文件。存在于某个代码包中的普通的源文件。库源码文件被安装后,相应的归档文件(.a)文件会被存放在当前的工作区的pkg的平台相关目录下。
测试源码文件:以_test.go为后缀的代码文件,并且必须包含Test后者Benchmark名称前缀的函数
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 词法器