Golang开端
1.源码路径使用文件夹src存储
2.包使用pkg存储
Golang
1.多核软件架构/多核硬件架构的广泛应用
2.超大规模的分布式计算机集群
3.Web模式导致的前所未有的开发规模和更新速度
等同于=====大规模高可用
使用Golang的平台/厂商
知乎舍弃Py用Golang
docker
kubernetes
云端开发语言
以太坊
HYPERLEDGRER
区块链开发语言
Golang和主流开发语言的区别
关键字
关键字C++ 37/84 GO25个关键字
并发支持,内存管理,垃圾回收机制
高效
编译的静态类型语言,尽管支持了垃圾回收机制,可以使用指针直接访问内存
生产力
依赖管理
独特的接口类型设计
支持复合而不支持继承的拓展方式
误区
大量的使用共享内存的方式,来进行并发控制,忽略了Go语言本身内置的CSP的并发机制
Java直接传递数组导致大量的内存复制,GO数组是通过值复制来传递的
Golang和其他语言的区别
package main
import (
"fmt"
"os"
)
func main(){
if len(os.Args) > 1{
fmt.Println("Hello World",os.Args[1])
}
os.Exit(-1)
}
//应用程序的入口
/*
1.必须是main包 package main 没有main编译时期会报错
2.必须是main方法 func main()
3.文件名不一定是main.go main.go
4.不需要package名字和目录名字保持一致
*/
//差异
/*
1.Go中main函数不支持任何返回值
2.main函数不支持传入参数
3.通过os.Exit来返回状态
4.通过os.Args获取命令行参数
*/