技术开发 频道

探索其它语言开发.NET程序

【IT168技术文档】

    首次引入.NET,在宣布Common Language Runtime (CLR)的优点时,我还在傻笑;有些专业IT人士说,可以使用任何语言开发.NET代码(只要它被导入平台),当看到COBOL和Fortran语言也可以开发.NET程序时,我发出了讥笑声。在学校时,我从没有接触过其他语言,所以我不能想象除C#或VB.NET之外还有其他语言。当然,我错了。其他.NET语言前景很好。现在让我们先快速回顾一下CLR的内容。

    CLR的内容

    CLR是.NET构架的基础。它是.NET构架用于执行应用程序的核心运行时引擎,是基于Common Language Infrastructure (CLI)国际规范的运行时引擎。语言编译器产生中间语言(IL),此中间语言被传给CLR,执行程序。

    产生的中间语言与所用到的开发语言无关,所以COBOL、 .NET、 C#或 Pascal .NET代码都可以编译成相同的中间语言。这是交叉语言进行开发/支持的极好平台。给定CLR的标准体系结构,则可以在环境中导入很多非.NET语言。因此,使用熟悉的语言编写代码同时,也可以花时间学习平台知识。现在让我们近距离的观察.NET开发人员用到的其它语言吧(除了C#、VB.NET或J#)。

    其他语言

    除COBOL语言之外,其他比较老的语言(如Fortran和SmallTalk)和一些比较新的语言(如Python和Ruby)都能导入到.NET中。下面是这些语言的一些例子:

    1.COBOL:富士通 NetCOBOL for .NET为COBOL带来了前途。毕竟,为什么要限制这种语言处理Y2K问题呢?可以利用这个表面看起来已了无生机的技术构建功能强大的Windows或基于Web的应用程序。甚至可以用它编写ASP.NET代码。
    2.Fortran:这是科学语言的一个选择。其最大的优点在于,任何复杂情况下,其强大的计算能力。现在,不仅仅能在实验室和校园里发现它,在.NET世界也有其踪迹。(我想起了大学时代输入的最后一行Fortran代码。)
    3.Pascal:我第一个编程工作则是为一家本地公司开发维护包裹运输应用程序。这个软件用Borland Pascal 语言写成。依然记得当初课堂外看到Pascal或VAX环境的惊讶之情。现在,我可以重拾Pascal技术,利用Borland Delphi、TMT .NET、或Component Pascal开发.NET应用程序。
    4.SmallTalk:无数次听到SmallTalk是最终的面向对象语言,但是对于这种说法,我没有第一手资料。(如果你有第一手资料,请在文章的讨论部分谈谈你的经验。)它在著名的Xerox PARC实验室发明出来,现在仍有广泛应用。现在可以采用#Smalltalk和S#构建.NET应用程序。
    5.RPG:我很偶然地知道它,在几年前高校的课堂上才认识它,在现实世界中我还从没有用到过它。如果你想了解更多关于.NET的RPG知识,请查看Visual RPG。
    6.Perl:我第一个Web项目使用Perl构建,我必须承认它是个功能强大的语言,并且许多UNIX/Linux管理员每天都使用它。如果你想了解更多关于.NET的Perl知识,请查看Perl Dev Kit。
    7.PHP:PHP是几年前才开发出来的一种语言,我在一些小项目上使用这种语言,因此,对它的印象比较深刻。它从一种脚本语言成长为稳健的开发语言。用它构建.NET构架是不能忽视的内容,PHP Sharp将PHP应用到.NET上。
    8.Ruby:我没有使用Ruby进行开发的经验,但是我很多朋友都喜欢它。可以在.NET世界中使用Ruby技术。Ruby/.NET Bridge允许同时使用Ruby和.NET对象。还可以利用NetRuby解释器。

    除了导入现存的和已定制的语言到.NET外,还有一些其他语言。F#即是一个例子,它由Microsoft公司开发,可以提供一些开发人员很喜欢的所有主要特征。

    也许,你有自己偏爱的语言用于.NET开发。如果能开发自己的语言,请关注.NET 语言开发小组站点和微软研究站点上关于语言开发的内容。

    另外的路

    在使用当前语言得心应手的时候,你可能也会向.NET平台上导入旧语言或新语言产生兴趣。我花了很多时间才跟上C#和VB.NET开发,但是每个开发人员都不同。所有的.NET语言似乎都证实了微软的断言:.NET是个“不可知语言”平台。

0
相关文章