主页 > 电脑硬件  > 

Golang语言特性

Golang语言特性
1.Go语言的优势

1.1极简单的部署方式 —可以直接编译成机器码。代码可以直接转换为二进制数据,在操作系统上可以直接./去执行。 —不依赖其他库。最终生成的可执行程序是一个静态的二进制文本文件。 —可以直接运行即可部署。 —静态类型语言。编译的时候检查出来隐藏的大多数问题。

1.2语言层面的并发。 <1.天生的基因支持 <2.充分的利用多核

package main import ( "fmt" "time" ) func goFunc(i int) { fmt.Println("goroutine ", i, " ...") } func main() { for i := 0; i < 10000; i++ { go goFunc(i) //开启一个并发协程 } time.Sleep(time.Second) }

1.3强大的标准库 —runtime系统调度机制。 —高效的GC垃圾回收机制。 —丰富的标准库。

2.Golang适合做什么

(1)、云计算基础设施领域 代表项目:docker、kubernetes、etcd、consul、cloudflare CDN、七牛云存储等。

(2)、基础后端软件 代表项目:tidb、influxdb、cockroachdb等。

(3)、微服务 代表项目:go-kit、micro、monzo bank的typhon、bilibili等。

(4)、互联网基础设施 代表项目:以太坊、hyperledger等。

3.Golang明星作品 4.Golang的不足

1、包管理,大部分包都在github上。私人的包,不稳定。

2、无泛化类型(Golang 1.18+已经支持泛型)

3、所有Excepiton都用Error来处理(比较有争议)。Java全部error都捕获。

4、对C的降级处理,并非无缝,没有C降级到asm那么完美(硬件、序列化问题)

标签:

Golang语言特性由讯客互联电脑硬件栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Golang语言特性