Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。
-
查看go版本 go version
-
go语言的特点:
运行效率高,开发高效,部署简单.
语言层面支持并发,易于利用多核实现并发
内置runtime(作用:性能监控,垃圾回收等)
简单易学,丰富的标准库,强大的网络库
内置强大的工具,跨平台编译,内嵌c语言支持
-
GO 语言有那些应用
服务器编程,如处理日志、数据打包、虚拟机处理、文件系统等;
分布式系统,数据库代理器,中间件等;
网络编程,目前使用最多最广泛的一块,Web 应用、API 应用等;
云平台,目前云平台再逐步采用 GO 实现;
-
GO 语言命令行工具介绍
go build:用于编译源码文件、代码包、依赖包;
go run:可以编译并运行 Go 源码文件;
go get:命令主要是用来动态获取远程代码包的;
-
程序所属包 必须要有package 而且必须是第一行 package main
//导入依赖包 import "fmt"
//常量定义 string是类型 const NAME string = "张三";
//全局变量 string是类型 var name string = "李四";
//一般类型声明 type immocInt int
//结构体 type Learn struct {
}
//声明接口 type IStudy interface {
}
//声明一个函数 func immoc(){ fmt.Print(NAME); }
//main 函数 必须要有main 才能可执行 func main() {
immoc();
fmt.Printf("hello world!");
fmt.Print(NAME);
fmt.Print(name);
}
- package
package 是最基本的分发单位和工程管理中依赖关系的体现
每个GO语言源代码文件开头都拥有一个package声明,表示源码文件所属代码包
要生成GO语言可执行程序,必须要有main的package包,且必须在该包下有main()函数
同一路径下只能存在一个package,一个package可以拆成多个源文件组成
- GO 语言基础语法---- import 原理
如果一个 main 导入其他包,包将被顺序导入;
如果导入的包中依赖其它包(包 B),会首先导入 B 包,然后初始化 B 包中常量和变量,最后如果 B 包中有 init,会自动执行 init();
所有包导入完成后オ会对 main 中常量和变量进行初始化,然后执行 main 中的 init 函数(如果存在),最后执行 main 函数;
如果一个包被导入多次则该包只会被导入一次
-
GO 语言基础语法----import 别名,“.”,“_”
别名操作的含义是:将导入的包命名为另一个容易记忆的别名;
点(.) 操作的含义是:点(.) 标识的包导入后,调用该包中函数时可以省略前缀包名
下划线()操作的含义是:导入该包,但不导入整个包,而是执行该包中的 init 函数,因此无法通过包名来调用包中的其他函数。使用下划线()操作往往是为了注册包里的引擎让外部可以方便地使用