为什么选择Delphi.Net ?
2008-04-09 04:31:55来源:互联网 阅读 ()
作者:Chad Z. Hower 译者:Bear
许多人曾预言,随着.Net的引入,从一种语言的角度来说,Delphi将会衰落或者消亡。在过去的几年里这种预言就已出现很多次了,然而Delphi仍然保持了稳定的发展,甚至还有几次斩获。我相信随着.Net的持续增长,Delphi将不仅会保留住它的拥护者,而且其使用与拥护者都会增加。这是与今天许多人的意见相反的,下面我将解释这一点。
谁将从.Net获益?
.Net是个好东西。但是.Net所提供的大部分东西只是对程序员有好处。除了程序员利用.Net提供的东西外,最终用户只能获得极少的好处。没有最终用户会重启他们的计算机,并说“是的,我想今天我将安装.Net”。用户将只在被.Net应用程序要求的时候去安装.Net。
就个人而言,.Net对我最大的吸引力就是我们最终拥有了代码的跨语言兼容性。这已被延误很久了,但是跨语言兼容性也仅是程序员的工具。最终用户不会关心C#代码是否能与Delphi一起工作的很好。最终用户只关心这个程序是否做了他们希望它做的。
.Net是为服务器的
在你反驳我之前,这条申明从来都不是真的。.Net当然不是只为服务器设计的。.Net也是为桌面计算机设计的,然而从相近的术语上层面上说,.Net是为服务器设计的,这就是为什么.Net现在是并且将来也是被用作这种相近术语的原因。在一个机器上安装.Net,1.0版本需要20M以上的空间,1.1版本已发布,体积更大(1.1版为23M,并且最终的安装需要110M)。这仅仅是在安装方面,除了体积大以外,它还将变成操作系统的一个核心部分。
对于那些安装大小不是个问题的用户来说,部署与支持却也是个问题。对于有着成百上千的计算机的那些公司来说,不会简单地大规模部署任何软件系统,当然也不会不做许多准备工作就贸然安装像.Net这样的核心软件。
对于家庭用户来说,就不仅仅是安装问题了,还有带宽的问题。软件当然还是通过CD来发布的,但大多数家庭用户使用的非游戏软件都是从因特网直接下载的。当然许多用户今天也拥有宽带接入,但是除去程序员以外,大部分家庭用户都没有宽带接入。多数可下载的程序都在1-5M之间,这是一个可以接受的下载大小。把体积增大到5-20倍那就不太好下载了。
一旦你安装了它,它就在那儿了
是,又不是。一旦你安装了.Net,事实上你就拥有它了,并且对于所有.Net程序来说,它都是可用的。然而,.Net框架1.1版本已经发布,显然1.2或者2.0也已在开发之中。以前的经验告诉我们每一个版本都会比老版本体积大。如果一个用户已经安装了1.0,但是你的程序又需要1.1,这个最终用户就需要另外的更大的安装。最后,完全可以想象最终用户将需要多达4个不同的.Net框架版本,来支持已安装的软件。
程序员的观点
.Net很酷。.Net很新。这就足够让大多数程序员期望.Net了。当然,.Net也确实有足够的真材实料来让自己值得程序员的期望。不过,我们还是从不同语言的角度来看一下吧:
C - 简言之,C 是不能被托管的代码,这样就不能在.Net上很好的工作。C 用户将被划归到非托管代码或者设备驱动开发这一类中去。微软已经在鼓励C 开发者转移到C#了,并且最后非托管代码将不只是不被鼓励,而是几乎就是不被允许了。虽然C#在很多方面与C 都相似,而且显然(其语法)根植于C ,但是仍与C 有着很大的差异。多数C 开发者都是纯粹主义者,对他们的语言有着非常狂热的执著。由于这一点,许多C 开发者都不喜欢C#,并且根本不情愿转移到C#上去。
Visual Basic - Visual Basic 在.Net中并不存在,而是变成了Visual Basic.Net。VB.Net与VB是不兼容的,仅仅在一些基本语法上有些类似。(在.Net上)VB程序必须被重写,而且几乎是完全重写。当VB最终有了一些改变来使它成为一个“真正的”语言时,VB用户却开始反对了。许多VB用户很不满意地称VB.Net为Visual Fred,而且誓不转移到.Net平台,或者干脆就投奔Delphi。
Delphi - Delphi 7用户已经有了一个Delphi for .Net编译器DCCIL的预览版。Delphi 8 将提供完整的Delphi for .Net编译器。现有的Delphi代码,当然需要一点改变,将能被轻松地移植到.Net平台。
这意味着什么?这意味着Delphi将是移植到.Net的路径中代价最小的一条。如果你是一个Delphi开发商,你知道你就能以最小的顾虑而转移到.Net上,然而如果你是一个Microsoft开发商,你就要选择是完全重建还是维护两套不同语言的系统,两种选择都很拖累。也就是说是继续维持现有的VB或C 的系统呢,还是重新以C#或则VB.Net建造新的系统。
.Net需要两次开发
由于语言兼容性问题,.Net基本上是个比较极端的事情。由于很可能众多公司将只在服务器而不是桌面计算机上部署.Net,因为现存的应用将很可能不被移植到.Net上,开发者们必须以两种语言开发,一种是VB 或 C ,另一种是 C# 或 VB.net。除了开发人员必须被培训两次外,还必须为可预见的将来保持分开的不兼容的两份代码库。
很少开发商能为使用了.Net的最终用户而完全转移到.Net上来,即使他们可以,也不得不支持老的应用或为移植问题而重写代码。
在另一方面,Delphi允许开发者只维护一份通用的代码库,就能被用作在Win32 (不是 .Net) 与 .Net上跨平台部署。Delphi也能让开发者通过Kylix(重新编译源代码)而在Linux上部署应用。对现有的Delphi开发商而言,只需要对开发人员进行很少的再培训。
可是现在并没有Delphi.Net
现在并没有Delphi for .Net,但许多开发者已看到这种趋势了。在Delphi 8中的Delphi for .Net将提供独一无二的跨平台选择与简单容易的移植路径。在预料到这一点之后,许多开发者正在转向Delphi。
.Net开启了大门
由于现存的库,代码与第三方支持(有许多是非Delphi语言的),语言互操作性的缺乏曾经阻止了许多开发者使用Delphi。有了.Net,语言就不再是个问题。.Net将使更多的开发者转移到Delphi上来。(这里所谓更多的)开发者就是那些以前曾经考虑过Delphi,但由于这个约束而没有转移过来的开发者。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash