java中的接口是类吗
317
2022-06-17
Go有什么优势
可直接编译成可执行文件,不依赖任何东西,部署就是扔一个文件上去就完成了。这点非常重要,无论是个人开发还是工作中的很多任务,尤其在需要到服务器上跑的最方便了,不需要配置环境什么的,相比Python好太多。谁用谁知道!!!
静态类型语言,但是有动态语言的感觉。起初我接触Python后因为它的简单喜欢上了,第三方库也非常丰富,但实际中静态语言的特性尤其是代码需要按固定的缩进编写,在服务器上的文本编辑器中非常不方便,而且还需要安装相关的依赖,效率其实并不高,当接触go一天后,我立刻意识到,这才是我心中理想的语言,从此彻底放弃了Python。静态类型的语言就是可以在编译的时候检查出来隐藏的大多数问题,动态语言的感觉就是有很多的包可以使用,写起来的效率很高,支持函数式编程。
func main() {
/***
*闭包调用,
*/
func(a int) { //闭包没有名字
println("闭包")
println(a)
}(1) //最后的一对括号表示对该匿名函数的调用
}
输出:
闭包
1
语言层面支持并发,这个就是Go最大的特色,天生的支持并发,我曾经说过一句话,天生的基因和整容是有区别的,大家一样美丽,但是你喜欢整容的还是天生基因的美丽呢?Go就是基因里面支持的并发,可以充分的利用多核,很容易的使用并发。
func main() {
fmt.Println("aa")
/***
*go关键字后面的方法就是一个协程
*/
go func() {
for i:=0;i<=10;i++ {
fmt.Println("go go go")
}
}()
fmt.Println("bb")
time.Sleep(time.Second*3)
}
输出:
aa
bb
go go go
go go go
go go go
go go go
go go go
go go go
go go go
go go go
go go go
go go go
go go go
内置runtime,支持垃圾回收。
简单易学,Go语言的作者都有C的基因,那么Go自然而然就有了C的基因,那么Go关键字是25个,但是表达能力很强大,几乎支持大多数你在其他语言见过的特性:继承、重载、对象等。
丰富的标准库,Go目前已经内置了大量的库,特别是网络库非常强大,我最爱的也是这部分。
内置强大的工具,Go语言里面内置了很多工具链,最好的应该是gofmt工具,自动化格式化代码,能够让团队review变得如此的简单,代码格式一模一样,想不一样都很困难。
跨平台编译,如果你写的Go代码不包含cgo,那么就可以做到window系统编译linux的应用。
内嵌C支持,前面说了作者是C的作者,所以Go里面也可以直接包含c代码,利用现有的丰富的C库。
开发效率高。我在公司工作是用Java,Java实现个东西真是啰嗦务必,在可以不要Java的场合,我都会使用go。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~