在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
Golang发展历史 1. 诞生历史
GO环境搭建1. Go安装a. 打开Golang官网, https://golang.org/dl/ https://github.com/pingguoxueyuan/gostudy/tree/master/listen1
2. Git 工具安装a. 有效的、分布式的代码管理工具
3. IDE搭建(vscode)
4. GOPATH设置
b. GOPATH路径最好只设置一个,所有的项目都放到GOPATH的src目录下 c. GOPATH的目录结构介绍
第一个程序package main import "fmt" func main(){ fmt.Println("hello world") } 包的概念1. 和python一样,把相同功能的代码放到同一个目录,称之为包
GO 命令的基本介绍a. go run 快速执行go文件,就像执行脚本一样 d. go test 执行单元测试 和 压力测试
GO 程序结构GOPATH 目录下 a. go源码按package进行组织,并且package要放到非注释的第一行 b. 一个可执行程序只有一个main包和一个main函数 c. main函数是程序的执行入口
注释b. 多行注释 /* */
GO 语言的特性1. 垃圾回收a. 内存自动回收,再也不需要开发人员管理内存 2. 天然并发a. 从语言侧面支持并发,非常简单,只需要go一下 模板 func calc() { //⼤量计算 } func main() { go calc() } 举例 1.串行 package main import "fmt" import "time" func aa(){ for i:=0; i<=10;i++{ time.Sleep(1*time.Second) fmt.Println("执行", i , "次") } fmt.Println("aa is ok") } func main(){ aa() fmt.Println("主函数执行完了") } 结果 使用go 实现"并发" package main import "fmt" import "time" func aa(){ for i:=0; i<=10;i++{ time.Sleep(1*time.Second) fmt.Println("执行", i , "次") } fmt.Println("aa is ok") } func main(){ go aa() // 只需要加上 go就可以了 fmt.Println("主函数执行完了") time.Sleep(15*time.Second) } 结果
3. channela. 管道,类似unix/linux中的pipe
4. 多返回值a. 一个函数返回多个值 返回一个值package main import "fmt" func add(a int, b int) int { return a + b } func main(){ sum := add(3, 6) fmt.Println(sum) } 返回多个值package main import "fmt" func add(a int, b int) int { return a + b } func aa(a int, b int) (int, int) { return a +b , a-b } func main(){ sum := add(3, 6) he, cha := aa(6, 9) fmt.Println(sum) fmt.Println(he, cha) }
5. 编译性语言1.性能只比c差10% 2. 开发效率和python, php差不多
|
请发表评论