Java比.NET好在哪里?
101个Java比.NET好的理由(1~10) (译者:陈佳新)
101 Reasons Java is Better than .NET (1~10)
作者:John Lambert
译者:陈佳新
1. 可运行于多种平台─从行动装置到大型计算机 Java可在多种平台上执行,从智能卡(Smart Card)、嵌入式装置(JStamp)
、移动电话(Nokia、Motorola、Ericsson)、PDA(Palm、Symbian、Sharp )、 笔记型计算机和桌上型计算机(MacOS、Linux)、服务器(以Unix为基础的)、 Non-Stop服务器(Tandem),乃至大型计算机(IBM)。
2. 执行动态语言
Java能够执行像是Python(JPython)、Scheme(JScheme、SISC、Kawa)、 Ruby(JRuby)、Smalltalk(Bistro)这类的动态语言。相较之下商业公司 (译注:ActiveState)对于将Python移植到.NET所做的努力,其结果和效能实在令人感到失望。更有甚者,有的报告在比较CLR和JVM时,最后所得到的结论居然是─它们极为相似。
3. 这端平台编译,那端平台执行
Visual Studio .NET和.NET Framework SDK的End User License Agreements授权文件中都特地指明利用它们所编译出来的程序将无法执行于非Microsoft的 平台之上。
4. 所需下载安装的执行期系统较小
JRE(Java Runtime Environment)执行期系统的下载档案只有8 MB,相较之下 Microsoft .NET Framework Redistributable则是它的两倍有余(有20.4 MB这么大)。
5. 三不原则:不强制升级、不收会员费、不需软件保证费用
回想看看,有多少MIS预算编制硬生生地被绑死在Microsoft严苛的授权策略之 下呢?(译注:还记得上次Microsoft更新授权方式时的情景吗?企业若不加入 新方案,未来将付出更多的费用。)
6. 在相同机器上执行多种VM(执行期系统)版本
在同一个操作系统上拥有多种JVM(Java Virtual Machine)版本并且同时执行是很常见的。当你需要针对不同版本的JVM测试你的应用程序时,这种兼容并蓄的模式尤其方便。试着在.NET中这样做看看。Windows-based产品通常是在数台拥有不同版本Windows的机器上进行测试的。这真是个严重的问题,
事实上,这也就是为何连Microsoft都会授权其6,000名销售员使用VMWare(一 套能够让你执行多种虚拟机器的产品)的原因了。
7. 广大而创新的Open Source社群
存在大量开放原始码的程序代码是非常有价值的,不应被忽视。这提供了开发者一个庞大的陈列展示空间,用以放置可被重复使用的程序代码。事实上,大部分 .NET开放原始码项目都是重写自Java项目(译注:SourceForge.net上的NAnt便是 一例)。
8. 低售价的商业品质IDE
Eclipse和Netbeans这两套IDE针对任何型式的软件开发都是免费的。而JBuilder和 JDeveloper作为教学用途时也是免费的。这跟.NET有着天壤之别,Visual Studio .NET 一套就要价大约$500美元。还有,如何你以为SharpDevelop具有商业水平的话, 劝你还是多多考虑吧!
9. 许许多多的就业机会
在Monster.com上的搜寻结果很快便能够证明出要求会Java技能的工作远较要求会 C#的要来得多出十倍。事实上,有三分之一的C#工作同时也要求必须会Java技能。
10. 对老旧应用程序有较佳的连结标准
JCA(Java Connector Architecture)是一项连结EIS(Enterprise Information System) 的标准。JCA支持对SAP、IBM CICS、PeopleSoft、Oracle、Siebel、Screens 3270、 AS/400、Unisys、ADABAS-C、VSAM、CodasyI、IMS、Tuxedo等的存龋这个层次的连结选择是.NET无法提供的,一个也没有。
(未完‧待续)
本文地址:http://www.45fan.com/dnjc/73699.html