Delphi架构师访谈:.NET、Kylix和Delphi

丹尼·索普(Danny Thorpe)是Borland公司的首席科学家,此前他也是Delphi开发团队的一员,从Delphi 5开始担任Delphi的首席架构师。近日Builder杂志采访了他,就.NET、Kylix和Delphi等问题进行 了讨论。

Builder AU:你目前在Borland公司担任什么工作?

索普:去年我被公司提升为首席科学家。我目前主要在思索行业和技术的未来发展趋势,然后根据这些前景制定我们公司的未来计划。就我个人兴趣而言,Delphi语言和编译器仍是我的关注重点。我正在探索重新架构Delphi编译器的新途径,我们也许有办法使编译器能支持多线程功能,在这方面我们以前还没有尝试过。

Builder AU:当时微软已推出了C#,那Borland为什么还要开发Delphi.NET?

索普:.NET平台优势之一就在于它的灵活性和可以自由选择你所熟悉的开发语言。C#本质上是基于C语言的,Java也是基于C语言的,这样会把你限制在一种思想里。有很多人并不欣赏C语言的风格,还有很多人精通Pascal和Delphi,而懂Delphi和Pascal的开发人员比掌握其他语言的人学习Delphi.NET要快的多。

关于Visual Basic,值得注意的是VB.NET和VB6之间的关系。VB.NET是专门为.NET平台设计的,但存在很多兼容性问题。其中有些是出于偶然,还有些则是微软故意这样做的。Visual Basic社区为此很不愉快,大量VB程序员转向C#或Java。而我们Delphi社区的力量就源自我们公司成功地使Delphi开发人员不断前进,进入新的领域。

Builder AU:你没有遇到传统的Delphi开发人员转向.NET的过程中遭遇的问题吗?

索普:你会听到象“我不能象以前那样用指针”之类的抱怨。但是整的来说,我认为Delphi从Win32到.NET的转变要比从VB6 到VB.NET好上几个数量级。比如说,VB6里你使用的控件很难移植到VB.NET平台上。而对于Delphi来说,你只要花上几个小时,就可以把特定的应用程序移植到.NET平台。

Builder AU:Kylix目前进展如何,为Linux平台研制开发工具有哪些挑战?

索普:Kylix推出得早了点,这让它很受伤。以前Linux开发工具市场上有一小撮人叫嚣不需要其它工具软件,这让我很吃惊。他们说:“你们为什么要把Delphi带到Linux世界里?我们不想那样,快离开我们的地盘。我们有Emacs编辑器和C++语言就足够了。”这些言论很让人沮丧。我们在寻找向Linux社区服务的途径,草拟了一些技术文档,探讨需要做些什么才能让三年前发布的Kylix3达到目前的标准。Linux自2002年以来,又有了长足发展,所以Kylix还需要做很多工作。我们可以自己来做,也可以包给别人做,但都需要根据开发人员的反馈来修改完善Kylix。

Builder AU:那么你会选择把代码开源化吗?

索普:运行时代码目前已公开了。至于将编译器代码开源化,那几乎是不可能的。随着时间进展,IDE开发环境也许可能在未来开源化。我不是IDE团队的,所以这只是我个人意见。但是编译器内部我们仍在使用很多知识产权。

另一个将Kylix开源化的因素是人们马上会将它和Eclipse相比较。Borland公司有足够资金来建设一个社区以支持Kylix自由软件或开源Kylix吗?这难度很大。也许另外的途径是考虑Eclipse开发思路,和以前一样针对同样的社区,象许多Eclipse成员那样用已有的工具软件开发商业产品。这也有可能。

Builder AU:你和Mono项目之间的关系会更密切吗?

索普:那当然。我会时不时和Miguel de Icaza通通电子邮件。他现在在Novell公司,但他对Kylix很感兴趣。毫无疑问,Momo项目正在寻求实力强大的开发工具社区,所以他们对于Borland参加他们的项目很感兴趣。当然微软的阴影无处不在,我们不得不小心从事,以免触怒微软。Borland公司内部有几个人就很谨小慎微,但我不是那种人。我们有Mono平台beta版测试人员,他们在Mono平台下测试Delphi.NET,以确保我们的.NET代码能在Mono上运行。我们的营销会把握好分寸,以免微软关注。

Builder AU:Delphi今年要庆祝诞生十周年,你认为它在未来五到十年里前景如何?

索普:在未来五到十年里我们要关注开发语言和工具集,它们将急剧简化复杂的编程任务,以至于象C++之类的标准语言和标准程度略低的C#都不可能跟上发展步伐。

我经常思考的一个问题是多核心处理器会对应用程序的开发造成什么影响。目前处理器的频率快要达到极限了,多核心处理器将大行其道。应用程序为充分挖掘计算机的潜力,就必须采用多线程技术。目前多线程技术的问题是它必须由编程人员人工编写。未来的工具软件就要提供简单的模型,能自动实现多线程的代码细节。我认为随着Delphi语言的发展,我们有机会按这一思路来做。如果我们能够重新定义一些现有的语言,或者引入一些新的元素到语言里,使得例程能独立执行,那么你就不必再为回调或其它事情犯愁了。

此外我们还在研究几何类及进一步分析代码,使开发人员能够有良好的编程习惯。同时还可以提高他们编写代码的效率。这些就是我们研究的所有领域。

我不希望看到Delphi成为一种狭隘的专门限于某一领域的编程语言。它是一种通用语言,我们要不断尝试,尽量挖掘它的潜力。我们在.NET领域拥有独特地位,但是在其它平台上我们也占有一席之地。而C#不能够跨平台,它只能在.NET平台下工作,毕竟能跨越平台的语言是凤毛麟角。我们一定还会继续让Delphi语言变的更为多样化。

Builder AU:最近两年里诸如微软和Sun之类的公司越来越热心地公布公司产品及服务的路线图。那么Borland公司是否也会对于开发计划和即将发布的产品更为开诚布公呢?

索普:我们以前在公司外遵守保密制度。以前Borland公司无论对什么消息嘴都很紧,产品发布时引得消费者一片惊喜。但IT行业在变化,用户希望了解更多信息和通告。实力雄厚的企业投资了数百万美元,肯定不愿新产品上市时才知道。但是我们要平衡好可公开的信息和不可公开的信息之间的度。Delphi路线图之所以不公开,是因为里面有些信息一旦公布,会对我们在其它方面的谈判造成影响。

Builder AU:你认为Delphi将来会公布beta测试版吗?你认为这样做是否会产生出更好的开发工具?

索普:我觉得以后有可能公布beta测试版。目前我们还没有这样做,但是内部要求公布测试版的压力正在增大。这只是个政策问题。但我认为公布beta测试版不会提高发现bug的效率,公布beta测试版只是一支霰弹枪——它子弹很多,但击中目标概率很小。查找bug要用系统单元测试方法,一行一行有系统的测试。公测的好处是可以为产品大做广告。公测会过早地引来广告宣传,这对于开发很隐秘的产品来说会给用户带来惊喜。至于公测提供的反馈及有用特性,我们公司内部的私测已有很多这类信息了。公测的主要用处就是广告宣传,别无其它。

Builder AU:收发电子邮件和开发Delphi编译器之外的时间,你做些什么?

索普:我是一个狂热的滑雪爱好者。有两次我差点摔断脖子。现在我和一个朋友在自己制作滑雪板,不过遇到了点小小的技术问题,我们会找出问题所在并解决它。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Kylix Delphi 是一种编程工具,它是由 Borland 公司开发的一套集成开发环境 (IDE),用于创建基于 Object Pascal 的跨平台应用程序。它是 Delphi 的 Linux 版本,为开发者提供了在 Linux 平台上编写图形化用户界面 (GUI) 应用程序的能力。 Kylix Delphi 继承了 Delphi 在 Windows 平台上的强大功能和易用性。它提供了丰富的工具和组件库,使开发者能够快速构建高效、稳定和易维护的应用程序。Kylix Delphi 的开发方式与传统的 Delphi 开发类似,开发者可以通过可视化设计器来设计界面,使用 Object Pascal 进行编码,并在运行时进行调试和测试。 与 Windows 版本的 Delphi 一样,Kylix Delphi 也支持事件驱动的编程模型,使开发者能够通过响应用户操作和系统事件来设计交互式的应用程序。此外,Kylix Delphi 还提供了丰富的数据库连接组件和数据访问技术,可以轻松地处理数据的存储、查询和操作。 Kylix Delphi 的最大特点是它的跨平台能力。开发者可以使用同一套代码在不同的 Linux 发行版上构建应用程序,如 Red Hat、SUSE、Ubuntu 等。这大大简化了开发人员的工作,减少了维护不同版本的代码的麻烦。 总而言之,Kylix Delphi 是一个功能强大、易学易用的跨平台开发工具,它为开发者提供了在 Linux 平台上创建高性能应用程序的能力。无论是初学者还是有经验的开发人员,都可以利用 Kylix Delphi 构建功能丰富、用户友好的应用程序,实现自己的创意和商业目标。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值