101个Java比.NET好的理由(1~10) (译者:陈佳新)
来源:互联网 发布:沙发垫布艺坐垫淘宝网 编辑:程序博客网 时间:2024/06/06 11:56
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无法提供的,一个也没有。
(未完‧待续)
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>- 101个Java比.NET好的理由(1~10) (译者:陈佳新)
- 101个Java比.NET好的理由(1~10) (译者:陈佳新)
- 狗比男人好的21个理由
- Dart比JavaScript更酷的10个理由
- Dart 比 JavaScript 更酷的10个理由
- 闲话J2ME技术之手机比PC好的N个理由
- 诺基亚比RIM更可能幸存下来的10个理由
- PHP比ASP优秀的7个理由
- 12个理由:为什么我会认为Android比iOS 7好!
- 好的设计有多重要看这10个理由就知道
- Java持续受欢迎的4个理由
- Android比iOS 7好的十二个理由 你知道几个??
- kali 1.1.0 无法安装parallels tools完美解决办法【Fusion比parallels好的理由】
- (转载IronMQ)使用消息队列的10个理由
- 升级到 Visual Studio .NET 2003 的 5 个理由
- 升级到 Visual Studio .NET 2003 的 5 个理由
- 10个不能开办公司的理由
- 选择Windows Vista的10个理由
- 下一代的WEB开发框架
- jni得简单使用
- 构造函数的继承问题
- Groovy还是Jruby?
- 告别System.out.print()—J2SDK1.4新增Java日志框架(
- 101个Java比.NET好的理由(1~10) (译者:陈佳新)
- Linux下创建库函数
- Java正则表达式详解
- Checkstyle的 使用
- 泛型介绍【入门的好材料】
- 解决中文问题的几个常用的函数
- 利用 SDE 对数据处理入库
- 什么是多层结构?
- 人生事业的三个境界