自从Borland推出了Borland C++ Builder之后,许多人时常会询问BCB和Delphi有什么不同?除了使用的语言(C/C++ v.s. Object Pascal)之外,是不是都一样?也有人经 常会不满的指出,是不是BCB 一定会在功能上落后Delphi一个版本,那么使用BCB的人比 # BCB 3.0 在除错功能的大幅领先 对于C/C++的使用者而言,除错是平日工作中的少不了的事情.所以一个C/C++编译器的除错功能就直接影响了生产力.在BCB 3.0中Borland对于 BCB3.0除错功能的强化会让Delphi3.0的使用者羡慕的不得了.BCB3.0除了 拥有Delphi3.0对于双数检视的工具视窗,加快了检视字串变数的之外,更 加入了强劲的模组检视功能.这个模组检视器可以让你巨细靡遗的观看应 用程序使用权的所有DLL以及专案中每一支程序的所有的方法.在中断点之 处启动模组检视器检查应用程序.你可以看到模组检视器显示了多么详细的资讯.更令人惊讶的是,BCB 3.0在应用程序执行时期居然能够显示出类似物件检视器的视窗,让你检查一个VCL元件的所有资讯.包括特性值,方法和事件处 理函数.这个除错功能实在太棒了,因为有了它之后,你就可以掌握执行时期 VCL元件所有的变化.此外BCB 3.0也包括了一个Event Log可以让检视应用程序执行时发生的事件.这些新的除错功能都是Delphi3.0所没有的低层除错能力.除了除错功能之外,BCB3.0也允许程序员对于编译器更好的控制能力.图形是BCB 3.0中新的 高等编译器选项功能.你可以看到BCB和一往的BC++一样允许你更进一步的控制 产生的程序码品质.请注意在这些选项中有一项MFC Compatibility. 当你需要 在BCB3.0中编译MFC的程序时,你必须选择这个选项,因为MFC使用了许多不正确 而且奇怪的C/C++语法,为了要让BCB的编译器能够顺利的编译MFC程序,这个选 项可以让编译器不致产生严重的错误. Delphi 3.0是PC级的工具中第一个真正可以开发N-Tier的开发工具. 另外Delphi3.0也是所有Borland的工具中支援COM/ActiveX最为完整的工 具,但是现在这个局面将被BCB 3.0打破.因为Borland现在也给予了C/C++ 使用权者相同的强大功能,让C/C++的程序员也可以设计出分散式物件计算 应用程序.此外BCB 3.0也可以让你一个步骤便制作出ActiveX元件.但是在 产生分散式物件和ActiveX元件时,Delphi3.0和BCB3.0差别最大的地方.下 面列出这两个产品使用的引擎. BCB 3.0和Delphi 3.02在处理Window计算的方式上也有相异这处. 基本上BCB和Delphi都是使用VCL这个元件类别,所以在处理Window讯息上 也是由VCL元件来处理和分派的.下面的表格比较了VCL, OWL以及 MFC三种 FrameWork在处理Window讯息上的异 * Windows讯息caching: * 处理Windows讯息的速度: #处理windows讯息的方式: Delphi 3.02---使用虚拟函数(Virtual Function) 和动态函数(DynamicFunction) 从上面的结果也可以证明BCB在处理window讯息方面是比Delphi3.02来得稍为快速.此外在ActiveX元件方面由于BCB3.0也是使用ATL的Message MAP 方式,所以在这方面比Delphi 3.02有较好的表现. BCB3.0除了前面比较偏向底层技术的革新之外,它也提供了一些重要的工具让先前使用BC++或是VC++的开发者可以很快地转换到BCB的开发环境之中. 第一个工具是所谓的资源转换精灵,它可以帮助你转换资源文件的内容成为BCB使用的表格和VCL元件.第二个工具是Borland推出的新工具Comm20MF.这个工具可以让你转换VC++产生的DLL成为能够让BCB使用的DLL. # RC Import精灵 对于许多使用BC++和VC++的人来说,一定使用了Resource Workshop或是AppStudio设计了许多的资源文件. 那么这些储存对话盒或是其他视窗资源的文件如何在BCB 3.0中使用呢?是不是需要BCB使用的元件重新设计呢?当然重新设计所有的资源文件将会是一件令人痛苦的事情.Borland为了解决这个问题,特别为所有使用BCB 3.0的人提供了一个工具RC Import精灵.你可以在BCB的Tools选单中找到它.RC Import精灵可以帮助你读取由BC++和VC++设计的所有资源,然后再把这些资源转换为BCB使用的表格或是VCL元件.如此一来你就可以直接在BCB中使用这些资源,并且结合所有BCB提供的VCL元件.有了RC Import精灵之后,你原先不管是使用BC++或是VC++设计的资源文件都能够立刻转换为BCB3.0的表格或是VCL元件,可以大幅减少你从这二个C++工具移转到BCB3.0所需要花费的时间. # COFF函数库的支持 在传统上Borland和Microsoft的C++编译器所产生的Object文件格式便是是不一样的.Borland一直是使用OMF,而Microsoft则是使用COFF格式. 这造成许多由VC++编译的DLL无法让BCB使用的情形.Borland为了解决这个问题,所以在BCB 3.0中提供了这个工具让开发者能够转换VC++的DLL档案格式成为BCB使用的OMF形式.如此一来就不会再有以前的困扰了.据我所知,Borland在未来会继续强化这个工具,让它功能更为强大,例如可能在未来也能够转换静态的函数库(.LLB)文件.除了上述的系统功能支持之外,事实上BCB3.0的连结器现在也能够产生正确kernel-mode的驱动程序文件格式.这代表你已经可以使用BCB 3.0编写驱动程序了.从这点来看BCB3.0对于系统工程师是非常有帮助的.BCB的程序员终于可以吐一口气了,因为BCB3.0在许多方面都领先了Delphi3.0.从的VCL元件类别3.5版,高等多重专案管理工具,到强劲的低层除错功能,同时支援VCL,MFC,OWL都显示BCB3.0是一个同时兼顾应用程序设计员和系统工程师需求的工具.此外由于BCB3.0继承了Delphi3.0对于Multi-Tier,Internet应用程序功能方面的经验,所以BCB是第一个让C/C++程序设计员可以开发分散式计算环境应用程序的工具. 在未来 BCB也将会同时支援Microsoft的COM+和CORBA等分散式物件技术的标准. 这代表使用BCB,你就不必担心未来你的应用程序会产生无法继续执行问题.当然,对于Delphi的使用者而言,所有由BCB3.0开发出来的技术,也都将出现在Delphi未来的版本之中.从这个角度来看,BCB和Delphi将会是相互超前,且吸收彼此功能的竞争局面.这对于BCB和Delphi使用者都是有利的,因为这二个产品在这种情形下将会进步得更为迅速,相信这是所有使用Borland产品的人高兴见到的事情。 |
Borland C++Builder 3 VS Delphi 3
最新推荐文章于 2019-07-14 16:54:43 发布