有不少PHPer会说PHP才是最好的编程语言,那是因为PHP是所有web开发中使用最多的语言,也被称为最有生命力的语言,所以也就自然而言有了“PHP是世界上最好的语言”的这个梗。
那么为什么很多程序员都信仰“Java是世界上最好的编程语言”呢?
首先从语言流行度来说,根据TIOBE 8月编程语言榜的数据来看,Java达到了16.8%,这就意味着每100名程序员里,Java程序员就占到了将近17%的比重。
可以说自1995年诞生以来,全世界程序员的目光都被这个神奇的语言所吸引。Java是一种简单的,跨平台的,面向对象的,分布式的,解释的,健壮的安全的,结构的,中立的,可移植的,性能很优异的,多线程的,动态的语言(形容词貌似有点多(/ω\))。时至今日,Java依旧是在科学应用中最好选择,包括自然语言处理。最主要的原因是因为Java比C++或者其他语言相对其安全性、便携性、可维护性以及其他高级语言的并发性更好。同时Java是默认的软件行业的应用程序开发语言,在金融服务行业的大量使用,投资银行和电子商务应用空间也非常之大。
先来说说Java语言的优点
Java是一种很平衡的语言,在开发效率,执行效率,语言的更新和稳定,很平衡。大概包括以下7点(当然,除了这7点还有很多):
-
Java是纯面向对象编程的语言。
-
平台无关性 (一次编译,到处运行;Write Once,Run Anywhere)。
-
Java提供了许多内置的类库,通过这些类库,简化了开发人员的设计工作,同时缩短了项目开发时间。
提供了对Web应用开发的支持,例如,Applet,Servlet,和JSP可以用来开发Web应用程序,Socket,RMI可以用来开发分布式应用程序的类库。
-
去除了c++中难以理解,容易混淆的特性(如c++中的多继承,头文件,指针,结构,单元,运算符重载,虚拟基础类),使得程序更加严谨,整洁。
-
具有较好的安全性和健壮性。Java语言经常会被用在网络环境中,为了增强程序的安全性。
Java可以构建很多种系统,当然有些它是明显不合适的。譬如操作系统的内核,算法原型和一些小工具,但除此之外其他大部分Java都很适合。而且有大量成功案例。
当然不可否认,Java也存在一些问题和弊端,毕竟再完美的语言都会有人去诟病。所谓人红是非多就是这个道理,Java因为流行所以受到的抨击也最多。但是同样,Java现在已经是too big too fail。即使有许多业界大佬因为Oracle的原因想干掉Java,推出各种“优秀”的语言(如 Kotlin),但短期内,看不到Java有衰落的可能。
呀,扯跑偏了,说说Java的小缺点:
-
需要运行环境、不适合开发桌面应用程序。
-
JVM的垃圾回收启动不可预测性,这些对一些关键业务有影响。但是,有一些商业的JVM可以解决这个,在量化交易领域有人用Java。
-
与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的。Java文件和class文件,以及对应的版本文件。
但是以上的这些语言缺陷,都不足以动摇程序员对“Java才是世界上最好的编程语言”的信仰。因为除了Java语言本身的综合实力之外,Java对于使用者也是非常友好。
总结
Java本身有一套非常成熟的思想,也帮到了很多美好的思想落实。它的优秀不是让你某个业务方向上比较方便,或者你可以少写几行代码,而是让你真正的慢慢去渗透其中的思想。其中的哲学,其中的大局观。
或许这才是很多程序员偏爱Java的真正原因吧。