|
|
(11) 帮助/文档
vc++的帮助和文档确实要比delphi/c++ builder的丰富一些。不过这不应当包括msdn,因为msdn是一套独立的产品,并不是专门给vc++准备的,况且其中包括了相当多的windows技术资料。作为一名程序员,不管用什么开发工具,可以(也应当)有一套msdn。 windows数据结构/apis是用c风格描述的这一点可能对delphi程序员来说略有不便,不过delphi中已经包括了大多数转换;另外,如果一个程序员连转换.h文件这么简单的工作都做不了的话,他(她)可能也做不了什么象样的开发。internet上的一个志愿者组织(www.delphi-jedi.org/)在这方面也做了大量工作,在他们的站点上有几乎全部有用的c/c++库.h的object pascal翻译。 (ps:delphi/c++ builder程序员为什么不可以买一套msdn呢?毕竟我们还在用m$的操作系统,总不至于连windows技术资料都不要了吧) (ps:从msdn看m$ msdn中的技术资料主要是以compiled html(.chm)格式存放的,但m$把全部.chm放在disc #1,而把索引文件(.chi)单独放在disc #2。这样一来就无法从光盘上直接看这些文件。要么安装,要么手工把相应的.chm和.chi拷贝到一起。我看不有什么技术上的理由(谁知道请告诉我)不把一半.chm和.chi放在一张盘,而另一半放在第二张盘。 这至少反映出m$内部某些人的阴暗心理)
(12) 国际化支持
vc++中已经包括了十多种语言的rtl资源,delphi中需要自己做资源本地化。虽然franch,german之类的版本中也包括english资源。:-<
(13) 应用领域
vc++在windows设备驱动开发(毕竟是m$ windows)和某些桌面应用(比如游戏)开发中用得较多。delphi更多应用在数据库/多层结构,多媒体和internet开发等方面。(ps:vc++在游戏开发中用得较多我看主要是价格因素,游戏使用专用界面,通常不涉及数据库和internet(即使internet play也不过是简单的tcp连接,并且directplay中已包括此项功能),昂贵的delphi和c++ builder显示不出优势。只需要$79的vc++标准版,directx sdk(可免费下栽),opengl文档(也是免费的),至多再加一套msdn即可。比如quake,全是手写的c代码,连c++特性都很少用到。borland也认识到了这一问题,所以发布了免费的c++编译器)
(14) 价格
m$的开发工具确实便宜(相对而言),不过是否物有所值,只能看你干什么用了。
(ps:别指望你买的toyota能有ferrari的性能。:-)
(15) 前景
有人认为m$财大气粗,borland难以对抗。我看不能这么简单下结论。m$有它自己的问题:法律诉讼,人才流失,资源分散,四面出击(m$现在连鼠标,键盘,游戏杆,玩具都生产)。而brland/inprise集中精力在开发工具,中件产品(如midas,visibroker和application server)和企业应用/管理环境(如appcenter和security service)上,应该还是大有可为的。
况且borland和m$之间并非纯粹的竞争关系,borland开发工具给m$ windows带来的收益要远大于和m$开发工具竞争带来的损失。毕竟对m$来说,开发工具只占其收入的很少一部分,即使不搞开发工具也只不过是个面子问题,于m$无损。m$在它面临垄断/不正当竞争指控的时候,因为长期侵犯知识产权而赔偿给borland一亿美元(称为“授权费”), 这多少也可以看作是一种和解的举动吧。 另一种经常听到的论调是“m$的产品市场份额大,borland能撑得住吗?”,这其实也有很多问题。鉴于m$出于竞争的目的,经常虚报数字,影响市场(m$的律师在法庭上承认m$曾夸大过其ie和office的市场占有率);m$自己宣传的其开发工具的市场占有率也很值得怀疑。m$还有重复计算的问题,比如卖掉一套visual studio,在计算vb,vc,vj等的销售量时都计算在内。其实很多人/公司买visual studio只用其中的一两种。其实borland产品的销售量还是很大的,尤其是在欧洲,北美和澳大利亚,在亚洲...(是因为d版太多了)。另外,每个公司都有自己的产品/市场定位,你能因为toyota,ford,volkswagen卖的多就说ferrari,maclaren,benz不行了吗?
4. 结论
delphi(其实应该说borland产品)在技术上有优势,vc++(其实应该说m$产品)也占有相当的市场份额。 (ps:说了半天等于没说。:-) (ps:m$的c#(读c sharp)能取得突破吗?我看不会。因为m$产品通常达不到所宣传的性能;而且一种不符合标准(c#不兼容任何一种语言标准,虽然据
网友评论:(评论内容只代表网友观点,与本站立场无关!) |
阅读排行
没有相关文章
|