关于Borland C++BuilderX的一些问题的回答

本文探讨了Borland推出C++BuilderX的动机,解释了C++BuilderX与C++Builder、VCL的关系以及其跨平台框架的细节。Borland在.NET平台的转型中选择了不同于C#和Delphi的道路,为C++开发者提供了原生开发工具并扩展到多个平台。C++BuilderX不向下兼容VCL,采用全新C++框架,支持跨平台和专业领域的开发,有望重塑C++在应用领域的地位。
摘要由CSDN通过智能技术生成

左轻侯
2003.10.20

    在Borland发布C++BuilderX前后的这一段时间里,我在CSDN上陆续看到了不少关于C++BuilderX(以下简称CBX)的讨论。作为Borland中国公司负责快速开发工具和开发者社群关系的工程师,我认为我有必要对大家的一些疑问和猜测进行回答。
需要说明的是,我并没有得到Borland公司的正式授权来做这个回答,因此下列文字,不一定等同于Borland公司的官方观点;我只是把从我这个角度看到的一些东西,尽量和大家进行沟通。如有错误或不当之处,还请不吝指正。

CBX诞生的背景

    就我所见,网上对CBX的问题主要集中在这几个方面:Borland公司出于什么动机开发CBX,它与C++Builder的关系怎样?CBX的framework详情如何,与VCL的关系怎样?Borland公司对CBX的定位和长期计划是什么?
    要回答这些问题,首先必须从开发CBX的背景说起。
    如大家所知,Borland公司在2003年发布了一系列的新产品,其中在Windows/.NET平台的开发工具就有三个:Delphi.NET、C#Builder与CBX。这些新产品的推出,表示着Borland公司在Windows平台下的开发工具阵营发生了大的变革和分化。而这些变化的发生,又根源于操作系统本身的一次深刻的革命,即从Win32平台到.NET平台的全面过渡。
    根据我的所见所闻,国内有不少技术人员仍然对这一转变没有足够的认识。简言之,Microsoft公司已经下定决心,将操作系统从Win32全面转向.NET;逐渐地,Microsoft不会再提供新的Win32 API,未来操作系统的新功能将全部以.NET SDK的方式提供;从企业级服务器,到桌面系统,再到嵌入式系统,.NET将是Microsoft公司解决方案中的统一的编程模型。虽然这个转变缓慢、艰难、痛苦,但这是历史潮流的方向。无论你是否喜欢,除非你放弃在Microsoft平台下的开发工作,否则就只能适应它。
    这一转变给Windows平台的开发工具厂商带来了很大的挑战,Borland公司也不例外。目前的形势,就和当年从DOS过渡到Windows的情况差不多,整个操作系统与编程模型与发生了彻底的变革。Borland的Delphi和C++Builder都深深植根于Win32平台,面对这一转变,必须作出积极的反应,才能求得生存和发展。Borland公司确实也做出了这种反应。
    正象大家看到的那样,Delphi的方向是和操作系统一起转向.NET平台,其结果就是Delphi.NET的诞生,它将和全新的C#Builder一起,成为 Borland公司在.NET平台下的主力开发工具。(但Delphi仍然保留了在Win32下进行开发的能力,因为Win32平台下的应用程序在未来相当长的一段时间内会继续存在。)
    至于C++Builder的方向,在Borland公司内部进行过讨论,结果大家应该已经猜到了,那就是C++Builder并没有向.NET靠拢,而是坚持走原生开发工具的道路,并且扩展到了多个平台、多个编译器。原来C++Builder和Delphi一起,由同一个RAD开发小组进行开发,这也是为什么C++Builder和Delphi总是交替升级版本的原因之一。Borland在做出这个决定以后,成立了新的C++/Mobile开发小组,C++开发工具从此和Delphi分道扬镳。
    Borland为什么做出这一决定,有多种原因。首先,原生C/C++开发仍然是最重要的市场之一。在Microsoft以外的平台上,无论是服务端的Unix/Linux,还是越来越热门的嵌入式系统,C/C++仍然是挑大梁的语言。即

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值