• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Delphi vs VC

发布: 2008-5-20 09:16 | 作者: 不详 | 来源: 计算机世界 | 查看: 97次 | 进入软件测试论坛讨论

领测软件测试网


(6) 组件支持 
delphi除了基于object pascal的vcl/clx外,也支持基于com/dcom的组件(比如activex),另加corba支持。vc++只支持支持基于com/dcom的组件。 

(7) 应用框架/设计思想 
vcl比mfc至少领先一代,这也毋须多言。mfc充其量不过是对owl的(一种不太成功的)模仿而已,从设计思想上看甚至还不如owl。作为一种语言的基本类库(不论可视与否),应该从大处着眼,力求简洁有效,保持一定的弹性和抽象度(抽象意味着从功能出发,比如vcl中的tcanvas就是对windows中dc(device context)的一种极好的抽象,比起mfc中的设计高明了何止一点半点)。而不是面面俱到,一一照搬apis(不幸的是,m$的程序员多年以来一直在不辞劳苦地做这项工作)。看看mfc的某些类,简直惨不忍睹:通常除了省了hwnd和dc之类的参数(已经作为类的私有数据保存了),其方法(method)简直就是windows api的翻版。这样做有什么意义呢?windows api不就摆在那里吗?比如说,使用mfc中的线程类还不如直接调用createthread/exitthread/resumethread/ 
setthreadpriority之类的api更方便快速呢。 
(ps:用过delphix(http://www.yks.ne.jp/~hori/)吗?directx这么繁杂的结构可以用object pascal封装得如此之好再次证明了vcl体系结构的强大) 

(8) 调试 
两者相差无几。vc++的源级调试更用户友好一些,而delphi/c++ builder对多线程程序的调试支持更好。 
(ps:要比单独的调试工具,borland的turbo debugger可就要比m$的codeview强多了) 

(9) 运行环境/系统需求 
应该说差不多。vc++的启动速度确实要快于delphi(这主要是相对于delphi 4+而言,delphi 3的启动还是很快的)。这很大程度上是由于一个事实:vc++主要是一个基于文本编辑器的传统开发环境。code warrior professional不是启动更快吗? 
至于“一个数据库程序要带上3~5mb的bde运行文件”的说法,这可能是由于在安装制作工具(installsheild,wise之类)中使用了“全部bde安装”(默认)而不是“部分bde安装”。如果你只使用access,dbase,foxpro,paradox之类的桌面数据库,只需要几百k的运行文件就可以了。用m$的工具开发的数据库程序也要带上一大堆odbc,dao,jet,ado,msde之类的运行文件。在delphi 5中,如果使用adoexpress,interbase express访问数据库的话,可以不带bde。 
(ps:不管怎么说,borland在delphi/c++ builder的启动速度方面还是要努力改进!) 

(10) 产品质量/稳定性 
有文章称“vc++的质量好,稳定性高”。真的是这样吗?visual studio的service pack不是都出到4了吗?什么是service pack?主要不就是bug fix + patch吗?!borland的工具也并不完美,delphi 3的vcl中确实存在“内存漏洞”,会导致用d3开发的程序有时(并不总是)退出后不能释放分配的内存。vc++的问题也不少:ie是用vc++写的吧,上网时多启动几个,开开关关,最后全关闭,看看你的系统资源剩下多少了?还经常导致“general protection error”。ultra edit是用vc++写的吧,也有同样的问题。其实说到底,程序质量好不好,运行稳定不稳定,主要取决于开发者的水平/责任心。比如说tomb raider系列和quake系列游戏同是用vc++开发的,但画面质量和运行速度显然quake系列更胜一筹。象美国航空航天局(nasa),俄罗斯宇航局(rsa),美洲银行(bank of america,资产超过5000亿美元的大银行),其他诸如american airlines,at&t,bmw,compaq,bbc television,british telecom等大型机构/公司都在用delphi开发复杂的,企业级(可笑的是,有人居然称“用vc开发企业级的桌面应用”,殊不知企业级应用和桌面应用是相对而言的)的应用系统(在http://community.borland.com(borland社团站点)上有关于用delphi和c++ builder开发的产品介绍),如果有人还要说“...稳定和可靠是硬道理,只好忍痛割爱了”,那他恐怕只好自制开发工具(外带操作系统)了。:-) 

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网