最近对Go语言比较感兴趣,把Java,C,Python,Go语言对比下,熟悉下这些语言之间的界限,对各个语言之间的特性和用途明确些,以免混淆。
Java
基本介绍
Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。支持多平台多平台。
语言特性
- 面向对象,自动回收内存
- 封装,多态,继承
- 适用网络编程
语言用途
Java,面向对象语言,算是所有语言中用户和使用范围最广的。目前适用范围包括系统后台开发,网络编程,安卓开发(以前是一家独大,现在kotlin异军突起,还有谷歌支持),有着大量的,优秀的开源框架,Spring,SpringMVC,SpringBoot,SpringCloud,MyBatis,Dobbo等。
C语言
基本介绍
C 语言是一种通用的、面向过程式的系统程序设计语言。1972 年,为了移植与开发 UNIX 操作系统,丹尼斯·里奇在贝尔电话实验室设计开发了 C 语言。
语言特性
- 结构化语言
- 性能高,处理底层
语言用途
老牌语言,面向过程语言,适用于底层驱动,需要掌握指针。写驱动程序,操作系统(Linux,Unix,MYSQL),3D游戏(最好C/C++),
Python
基本介绍
Python由Guido van Rossum于1989年底发明,1991年公开发行,与Perl语言(虽然我不知道这是啥语言)一样,遵循GPL(GNU General Public License)协议。
语言特性
python是一种解释型(没有编译过程,类似PHP),交互性,面向对象的脚本语言。易于学习,阅读,维护,有的丰富的库,跨平台,可扩展(即在不愿意开放的部分用C或C++编写,然后调用),常被称为胶水语言。
语言用途
Python适用于人工智能、科研、脚本编程,大数据,机器学习,数据挖掘,爬虫,做网站(知乎,YouTube)
Go
基本介绍
Go是一个开源编程软件,让构造简单,可靠且高效的软件变得容易。出自Google,07年开发,09年开源。
语言特性
- 简介、快速、安全
- 并行、有趣、来源
- 内存管理、数组安全、编译迅速
语言用途
Go语言被设计成一门应用于搭载Web服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。
对高性能分布式系统领域而言,Go语言无疑比大多数其他语言有着更高的开发效率。提供了海量的并行支持,这对于游戏端的开发再好不过。
Go语言主要用于高性能服务器端开发,适合多人开发大型软件,并且开发周期长,支持云计算的网络服务。适合处理日志,数据打包,虚拟机处理,文件系统,分布式系统等,还可以用于内存数据库和云平台领域,目前国内外很多平台都是采用Go开发。网络编程方面,广泛应用于Web应用,API应用。