Go与java,python区别


为什么要设计GO

Go设计者们希望有这样一种语言,既要有C语言的简单、高效,又要有java语言的内置GC、面向对象,还要有高效率、高并发,因此google工程师设计出了GO语言。

GO语言有什么特点

  • 虽然是面向对象,但是没有继承和多态
  • 强一致类型
  • interface不需要显式声明(Duck Typing)
  • 基于首字母的访问性控制
  • 语法简洁,没有where
  • 高并发

三个语言的特点

Java

  • 速度快、依赖包成熟
  • 并发性不高。

Python

  • 运行速度慢
  • 代码简洁、易上手、开发快1

GO

  • 易上手。GO语法简单,类似于C语言
  • 效率高。开发过程中相较于 Java 和 C++呆滞的编译速度,Go 的快速编译时间是一个主要的效率优势。Go拥有接近C的运行效率和接近PHP的开发效率。C语言的理念是信任程序员,保持语言的小巧,不屏蔽底层且底层友好,关注语言的执行效率和性能。而 Python 的姿态是用尽量少的代码完成尽量多的事。GO则把C和Python结合起来了
  • 自由。Go语言可以说是开发效率和运行效率二者的完美融合,天生的并发编程支持。Go语言支持当前所有的编程范式,包括过程式编程、面向对象编程、面向接口编程、函数式编程。程序员们可以各取所需、自由组合、想怎么玩就怎么玩。
  • 部署方便。二进制文件,copy部署
  • 高并发。Go 语言的 Goroutine 和 Channel 这两个神器简直就是并发和异步编程的巨大福音。
  • 稳定性。Go拥有强大的编译检查、严格的编码规范和完整的软件生命周期工具,具有很强的稳定性,稳定压倒一切。那么为什么Go相比于其他程序会更稳定呢?这是因为Go提供了软件生命周期(开发、测试、部署、维护等等)的各个环节的工具,如go tool、gofmt、go test。

综上所述,GO语言语法简洁、易上手、并发性高、协程间通信方便、内置GC、稳定性好,因此使用GO的人越来越多。

参考

【1】Go语言和Java、python等其他语言的对比分析

【2】c、java、go、python总结对比


文章作者: Alex
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Alex !
  目录