4月15日,
CodeGear的领袖人物David I拜访了盛大,并对Delphi的未来(下个
版本)做了预告及展望,同时,也解答了我们压在心头多时的问题。
我在此把交流的记录发上来,让大家一起激动一下吧
首先是Delphi新版本的一些特性与展望:1.
多核的支持 /
异步方法 (VC中早就拥有的OpenMP,在Delphi中也很快就有了)
2. 内置的Direct 2D模块及开发库
3. 将会拥有一个能同时
运作于x86和x64的IDE,在此IDE下将会有
跨平台编译器,能够编译用于linux和MAC的应用程序。(一次
编码 + 选择编译器 = 多个平台下可运行的副本,对于游戏开发太有用了,我们再也没有必要特地为linux或MAC开发游戏,拿Windows下的代码来重新编译吧)
4. 将会支持
windows7下的触
摸式编程,对手势事件的感知,比如说一个手指从屏幕划过,或者两个手指从上移动到下,甚至是用一个手掌来拍屏幕,这些不同的动作都能感知到,并且处理它们。(Windows7的特性,微软曾表示,会发布用于VC的Touch开发SDK,但是没有计划将该SDK集成到IDE,Delphi将是
Win7下RAD Touch开发的领路者)
5. 将会支持手持
设备的开发,比如说工业的设备,或是手机
6. 强化的DataSnap,将可以完美的支持在Delphi,
C++Builder和Delphi Prism之间
传递数据7. 可以调试数据库中的存储过程(Store Procedure)和函数(Function),并帮助数据库找出问题
8. 多人合作模式的进化,避免写过多过长的代码,CodeGear将进一步致力于减少代码量,在提高开发效率的同时,也保证产品的质量(这才是Delphi的真正
意义所在!!)
9. 将支持云计算(这个不用说了吧,现在广为流行的云计算)
10. 将支持函数式编程,这需要很多时间,据David估计是两年后会实现
以上的10条,足以让我们激动了吧?Win7的特性,据我所知,微软内部有SDK,但是却从未
打算在语言,或是IDE上体现出来,Delphi将在 Touch Development上引领一个时代。同时,类似于Erlang的分布式,函数式编程,虽说要比较久才能看到,但是由此我们看到了CodeGear的努力。
然后是一些FAQ,David亲自回答了我们的问题,并且对Delphi的将来,他也是非常的乐观
对于我们来说,我们自然是希望了解得越多越好,有些问题也问得很尖刻,但是David还是给出了让我们较为满意的答复
一、 技术类1. Delphi什么时候能原生支持类似于parallel.for的多核并行开发?
[David] Delphi肯定会支持多核并行的开发,但是不是现在,可能是下一个版本
2. 有计划让Delphi发展成类似于Erlang的分布式语言吗?是否会提供分布式开发库?
[David] 似乎DataSnap已经能够满足类似的需求了,你可以用它来做分布式应用。当然我们是有计划实现分布式的函数式编程的,这需要大幅修改编译器
3. B/S开发能否加强?能否使用类似于
JSP/PHP的模式?
[David] 我们现在重点在VCL for the Web上,VCL for the Web 11和以往的版本相比有着天壤之别,它可以像一般的
Delphi开发那样,拖放式开发,也可以支持
RIA。VCL for the Web 11已经可以支持IIS等许多服务器了。我觉得它已经很强了。(VCL for the Web 11 已经可以被部署在支持IIS,Apache,ISAPI,NSAPI等各种服务器上,并且可以实现不需要本地运行时库的RIA应用,比Silverlight或是
Flash都来得优越)
4. 能否支持Native RIA? 能否不需要用户安装类似于SilverLight的运行时库
[David] VCL for the Web的目标与Silverlight不同(其他的内容参考上一条)
5. 是否有计划实现针对
敏捷开发的Delphi Doc?
[David] 新版本的Delphi会带有一个Source Control System,用于满足多人合作开发的需求,它的功能比单纯的Document强得多
6. Delphi的类能否被
序列化成
XML?能否从XML加载一个类?
[David] 从XML加载类是不可能的,类里边的方法不能够通过XML来描述,我是指Native的语言都不可能这样,如果想在Server和Client之间传递一个类的话,可以用DataSnap
7. 什么时候能支持x64的操作系统?
[David] x64的计划很早就有了,但是我们没有足够的人力,估计还要再等下个版本,或许是2011年?
8. 有打算支持跨平台吗?特别是
移动应用平台,如Symbian和Windows Mobile
[David] 跨平台肯定会支持的,而且我们以前也做过kylix,但是很可惜的,
Borland觉得kylix是浪费时间,于是终止了它。但是现在它又被提上日程了。 Windows Mobile?可以用Delphi Prism开发,其实
我自己的感觉,用Visual
Studio可能更好(David 都认为开发WM的程序用.NET
比较好,看来Delphi不太会往WM方向发展了)
二、 意见类9.
反射机制能再做得好一点吗?我们想放弃RTTI
[David] 这的确是需要考虑的地方,当然RTTI我们不会放弃的
10. 希望在支持Unicode的前提下,让新版本的Delphi能兼容老版本的代码
[David] 很抱歉这是不可能的,从老版本移植代码过来,由于Unicode的问题,必须修改一些代码。我们也在努力的使这个修改变得更少。(这点我个人还是难以认同的,理由还是那句话,为什么VC可以而Delphi不行)
11. Delphi2009的bug多得难以忍受,不知
Delphi2010是否会改善?
[David] 现在的Update3应该没有多少bug了吧?我记得上次修正了300多个问题,如果是用的早期版本,还是换上update 3吧。Delphi2010会在Delphi2009 update3的基础上进行改进,不会再带上以前的bug的。
12. IDE是否能够支持将Delphi代码转换成其他语言,并按用户的喜好用不同的编译器来编译?
[David] 不同的语言使用不同的运行时库,就算语法上可以转换,也无法将运行时库转换了。而且语法上的转换也需要花费大量的劳动,并且没有意义。
13.
Embarcadero / CodeGear是否有计划为Delphi编写类似于微软
MSDN的文档库?
[David] 我们有CDN,和MSDN差不多的,同样的
架构,而且现在也有很多人向QC提交内容,这些都会被收录的。CDN会越来越丰富,Delphi也可以自己更新到CDN的内容。(可以通过CDN查看网路上别人的开发经验,这点比单纯的帮助文档好得多了,而且这次CG向CDN添加了大量的
开发实例)
14. Delphi是否会支持内建的Python或是Perl,甚至是Ruby这样的
脚本?
[David] 不会支持,据我所知已经有第三方的厂商支持了吧?
三、 方向类15. Delphi是否打算成为一个平台,是否会提出自己的标准?
[David] 我不知道你所说的平台是指什么,不过Delphi是一个RAD的,拥有很多控件的,能可视开发的工具,它的标准就是现行的标准。
16. Delphi的编译器是否有开源的打算?
[David] 不会开源,这是公司的
商业模式决定的,我们还想靠编译器来赚钱
17. Embarcadero / CodeGear如何看待用户的体验?
[David] 我们对用户的体验非常重视,用户有任何的问题都可以反馈到QC上来,我们会极积处理采纳的。
18. Embarcadero / CodeGear 如何看待来自Free
Pascal /Lazarus的竞争?
[David] 我们从来没有认为FreePascal或是Lazarus会对Delphi构成威胁,Delphi原本就是从Pascal扩展而来的,做了许许多多的扩充,现在组件也非常丰富了,而Lazarus的编译器远远及不上Delphi,它还借用了许多原本属于Delphi的库,自己本身的组件很少。如果说跨平台的话,Delphi也很快就有了。(CG还是很乐观的,等Delphi的跨平台面世后,lazarus还会有存活的余地吗?)
19.Embarcadero / CodeGear 认为Delphi的主要
发展方向是怎么样的?
[David] 我当然希望它成为一个开发语言中的优秀者,最近的工作主要集中在DBX, DataSnap和跨平台的一些事情上。我们当然也希望用户可以用Delphi来开发一切
看了以上的内容,大家是不是对Delphi更有信心了呢?相信Delphi2010会越来越好
因为CodeGear经不起再失败了,同样的,我们也经不起。
文中绿色的字是我的点评,仅代表我个人的看法。不代表CodeGear与盛大的立场