扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
三、Java不倒的原因
为什么说Java在LAMP、。NET及ROR的围攻下而能处于不败呢?笔者主认为主要有以下原因:
首先,其它的语言是特定领域的语言,尤其有些只是Web应用。而Java的应用范围更加的宽广。可以开发桌面程序,手机游戏、DVD播放器及应用服务器等。Java与某些软件有着天然的内在联系,如Database,ERP等。
其次,Java有大量的开源社区支持,看看Apache的Portfolio或SourceForge就明白这一点。这是Java发展快速的主要原因之一。采用Java作为平台而开发的软件,稳定的运行在各种操作系统上,相对竞争对手其它语言,如C++或C语言,极大的提高了人们的生产力。
第三,Java开发平台的多样性。有多种JDK可以供选择,包括Sun、IBM、Bea及开源的JDK.同时,有大量的应用服务器可供选择,如开源阵营的JBoss应用服务器、Apache的Geronimo、Sun的Glassfish等等。除此之外,还有大量的商业服务器平台。
第四,和Java相比,PHP 和Python等脚本语言更容易学习,它们在开发人员当中相当的流行,尤其是那些网页开发者。很多人,包括一些前Java语言的拥护者都认为,脚本语言和所谓的LAMP开源部件正在蓬勃发展,而这种发展减弱了Java的影响。但是,有一点经常被人遗忘,那就是,Java是一种两种层面上的语言:它既是一种虚拟机,同时它也是一种ASCII 语言。很多人看不到Java作为虚拟机的神奇之处,因为非常多的脚本语言就是建立在这种虚拟机之上的。
最后,Java会是一种通用型语言及平台呢,还是专门发展在行动或服务器平台上的东西呢?这里就存在一些似非而是道理。一方面开发人员得要把东西整合在一起、让环境可以在很多地方使用力量才会大,对Java来说,这正是它最强的地方之一。另一方面是开发人员也想专注在某一领域上。但如果专注在开发人员的技术上,Java社群最厉害的地方是可以把它用在应用服务器、交易服务器、一种网络协议、手机应用程序以及工厂自动化的控制程序或是智能型手机上。最后开发人员学到的是可携式的技能,而不只是一项技术。如果同CIO、CTO谈时,就会知道这相当重要。
四、LAMP组合利弊谈
LAMP组合正在逐渐获得市场认可,但是它已经具有追上非开源竞争者的实力吗?生活中最好的东西真的是免费的吗?开源支持者们当然原意让我们相信这一点。多年以来,他们已经将不断改进的LAMP组合作为构建商业系统并使之运转的一条免费之路。
但是LAMP组合也有一些潜在的缺点。开源组合和私有软件的一个明显区别在于新特性。私有软件提供商的发展依赖于增长率,也就是说需要不断增加销售额。这就使得他们要不断开发新品。另一方面,开源开发没有这样的环境,就是说创新的步伐经常要慢许多。你很少看到走在前沿的创新是开源产品。例如,在微软在SQL Server中开发XML作为一个本地数据类型的时候,开源MySQL数据库才刚刚将存储程序作为一个新‘特性,这比它的竞争对手落后了好几代。
同时扩展可能是对LAMP用户的一个挑战。使用集群计算机或刀片服务器和诸如Red Hat Linux这样的企业级系统扩展到LAMP系统是可能的,但是这并不容易。
在许多公司,LAMP仍然没有得到正式认可。但是在开源开发模式中,人人都可以做出贡献,这将推动LAMP比Java或。Net 更快的前进。不过,LAMP也不可能把现有的Java和。Net两大阵营消灭,因为大的公司客户都不会只采用一套软件。
应用促进开源发展,理念走向务实应用。与欧美相比,国内的LAMP架构在企业关键应用中的应用还有待提高。目前我国LAMP应用存在的问题:国内开源数据库的应用已经开始起步了,但是开发还没有和开源技术挂钩。LAMP要发展,能否做出商业软件是关键。
LAMP的商业化过程存在严重的问题。例如,PHP的产品给人留下的似乎就是,技术很好,但是客户体验服务没跟上,包括安装提示,升级以及Bug反馈等等服务都很粗糙,客户宁愿去选中商业化更浓的Java 或。Net.
五、结论
毫无疑问的是,LAMP组合拥有其自身的价值,但是要小心地使用它。它是为新兴商业系统和概念业务系统的可行性寻找证据的优秀工具,但是它也需要适当的关心和关注以变得更加高效。
在企业级开发,Java毫无疑问是完全占据优势的。Dyanimics 和Groovy 是Java 可以较大提升的一个地方,这使得Java更加动态,更适应小型应用。而EJB这些,就更不用说了,LAMP和。Net,基本上是不适用了。PHP很受欢迎,只是证明了PHP在很多简单应用上,开发者上手比较快而已。最关键的是,PHP和JAVA也不是一个层面比较的东西,如果要比较,那么就是MODE-1的JSP和PHP比较。特别是O/R、 AOP、MVC、 Patterns、XML config files、Tag libraries 等,在PHP中要实现还是要很长一段时间。
套用一句俗话“只要努力,就会更好”。Java有潜力成为从PDA到服务器任何领域都非常成功的平台。Java可以继续在其占优势的服务器端发展下去。还可以通过优化客户端程序的发布及安装使Java在客户端开发方面一样获得成功。不管现在的情况如何,笔者相信Java有能力成为一个完美的平台。通过不断的完善,降低开发人员入门的难度,提供对所有的平台和操作系统的支持,以及提供对更多语言的支持,Java平台将可以适应任何层次任何领域的开发。通过对客户端平台的优化Java在PC和移动设备领域中也会获得巨大的成功。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者