将 .NET 转换成 Java

M$ 在排挤了 Java 数年之后,有公司发展出一套新的工具,这套工具
可以让 .Net 的东西转换到到 Java 中。Halcyon Software 公布了第一个
Instant .Net (简称iNet) 的测试版本,这个东西是 M$ 的Visual Studio .Net 开发工具的一个嵌入程序,这个程序可以将以XML 为基础的 .Net Web Services 转成 Java 语言,并且让任何支持 Java 的应用程序服务器执行。一般企业的开发者,可以利用 Web Services 让从不同的提供厂商所提供的应用程序透过 Internet 互相沟通。例如,在 Oracle 公司内的资料,可以被 PeopleSoft 公司的 CRM 软件分享使用。


电子钱包也是另外一个 Web Services 的应用,它允许使用者在线上购买的
时候,不用敲入信用卡号码或是其它的信息。

我们可以利用不同的厂商所提供的工具来发展 Web services ,而这些web services则可以透过网络让任何执行不同操作系统的周边装置存取时, M$ 却把 .Net Web Services 锁定在他自己的平台 .Net server software 上。这个软件包含了一个执行环境,当然这个执行环境只能在M$ 的软件上执行。不过这家公司已经将部分的执行环境提交给 European Computer Manufacturers Association(ECMA) ,这是一个工业标准组织。像是 Halcyon 的执行长说的,iNet 的一个
好处是可以让那些以 J2EE 与Windows 软件为基础的公司,可以继续开发 M$ 的程序代码,但是将他们的结果放在支持 Java 的服务器上执行,这些服务器提供商包括了 M$ 的对手,像是 BEA, Sun, IBM ...Linux 以及 Mac OS X 操作系统均支持 Java ,因此也可以透过 iNet 来具备执行.Net Web services 的能力。这将会让这些选择使用 .Net来开发 Web services 的公司们,有更多的选择机会。


他同时也提到,有些争论说 M$ 也许不是个部署应用程序的好地方,也许选择 Linux box 或是 Solaris box 是更好的选择,而 iNet 让这些 .Net Web Services 的开发者可以将他们的程序部署在其它的平台上。不过 M$ .Net 工具的一位发言人婉拒了对 Halcyon 的技术下评论。Microsoft 也许会对 iNet 保持沉默,因为这个软件并不会使用 Java语言来取代掉他们的技术。

Java 是由 Sun 所发展的,并且成为 M$ 本身的程序技术的一个重要的竞争对手。M$将 Java 从 Windows XP 这个操作系统中移除,之后两家公司便不断在要吸引使用者来使用他们个别的程序语言。Hsi 指出, M$ 说过他们希望 .Net 可以在其它的操作系统上执行,但是他认为 M$很难忍受大家已经将 Java 运用得很成熟了。.Net Web Service 只可以在 M$ 的服务器上执行,因为他使用了一个叫做 CLI(Common Language Infrastructure) 的技术, CLI 是一个让 .NET
Web Service 执行的一个的一个核心技术。他与 JVM (Java Virtual Machine) 很相似,Java 可以被放在 client 上,并且执行 Java Application ,而 CLI 则像是 .Net 应用程序的引擎般。.Net 架构是 CLI 的商业化的实做结果,他包含了一些额外的特色,像是 class ibraries ,以及 client 端的使用者接口。

在经过约一年的测试之后, .Net 架构已经在 2/13 号公布了最后的版本。 人们希望M$ 公布它围绕着 .Net 架构设计的 Windows .Net Server ,接下来的五个月,会公布一个手持装置的执行环境的计划,而更小的运算装置也会在以后公布。Halcyon 的 iNet 工具可以替代 CLI ,这家公司使用自己的技术发展了一个执行环境,而这个执行环境可以让 .Net Web Service在 JVM 上执行。

Hsi 说,我们想要跳过整个 CLI 。

他们的作法是,程序开发者使用了 Visual Studio .Net 建立了一个.Net Web Service ,同时将他编译成一种叫做 MSIL (Microsoft Intermediate Language)。接着开发者使用 Halcyon 的 IL-to-Java (Intermediate Language-to-Java) 工具,这个工具最后可以将原来的 MSIL 转换成 Java byte code ,然后利用 Halcyon 工具包装成一个档案,接着这个档案就可以在 JVM 上面执行了。Yefim Natis 说: Halcyon 的计划有它的优点,然而当 M$ 持续的公布新的特色,以及更新 .Net 的架构之后,他们也许不会再继续维持下去。

Natis 也说,他很怀疑这会成功,以表面上来看,它非常的吸引人,因为他可以使用很棒的开发环境,像是 Visual Studio .Net ,然后却不被 M$ 的软件所局限住。由于 .Net 的架构下,包含了比JVM更多的特色,像是vital class ibraries ,以及用来显式 .Net Web Services 的使用者接口, Halcyon 必须开发额外的东西来补足这些差异。譬如,一家公司设计了Java 版本的 M$ Windows 窗体,他允许使用者建立client-side 的使用者接口(M$ ASP .Net) ,这个接口允许这个 application 被显示在 web site 上。

Natis 指出,他不会是 .Net 的真实行为以及功能面的复制,因为每次当 M$修改或是公布新的 service pack , Halcyon 将需要快速的实做这些新的特色,也就是说他总是 M$ 的表兄弟般,而且可能会缺少一些 .Net 的特色。Hsi则指出 Hylcyon 可以为 Java 重建整个 .Net 架构,不管 M$ 怎么修改这项技术,他有 90 个开发者在持续的维护他们的技术,而这项计划在 2000 年十月时就开始了这个计划。

Halcyon 也已经开发了一个产品叫做 Instant ASP (iASP),这是个Java 版本的Microsoft ASP (Active Server Pages) 技术。像是 HP 这些公司,都已经取得 iASP的授权, Hsi 说它的公司已经被证明他们具有将 M$ 的程序代码转换成 Java 的技术能力了。

当然也有其它人致力于将 .Net Web Services 带到其它非 Windows 的环境中,他们使用的是 ECMA 的标准, Ximian 公司就带了一个计划叫做 Mono ,他们正努力将 CLI移植到 Linux 以及 Unix 操作系统上。这个计画如果实现,将可以让程序开发者使用Linux Programming工具来开发.Net Web Services。

由 Corel 取得的技术支持, M$ 也开发了一个 FreeBSD 版的 CLI 。M$ 说,这个计划的目的在于证明 .Net 的一部份架构可以在开放式的标准下被复制出来。这个计划很像是 Mono ,但是他受到 M$ 的 shared source 版权的保护,也就是说这个程序代码只能以研究的目的存在,而不能被企业所商业化。

iNet 及 Halcyon 的 Java 执行环境可以免费下载,网址位于
http://www.halcyonsoft.com 
 
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值