Delphi程序员的困惑!

IAmKylix 2000-07-12 01:23:00
加精
我非常熟悉Dephi及Object Pascal,可周围的人总是非常推崇VC,我很困惑,是不是该学习VC,而C++Builder和Delphi太象,有必要学习吗?
...全文
538 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuenhan 2010-06-05
  • 打赏
  • 举报
回复
聘请一名delphi程序员,联系1384303231 崔
Neo2D 2001-05-20
  • 打赏
  • 举报
回复
Delphi完全支持cdecl 调用约定呀,
Phoenix2000怎么说不支持呢?
IAmKylix 2001-05-05
  • 打赏
  • 举报
回复
赞同楼上的。
在Win平台上,Delphi真是很棒!
很遗憾,我现在转到Unix平台了。Delphi,886。你们要好好照顾它哦~
Phoenix2000 2001-04-25
  • 打赏
  • 举报
回复
类库主要是用来方便实现用户接口的。真正到了 SDK 级,C/C++ 和 Object Pascal 有什么区别?据我所知,Win32 所有的 SDK 中好像只有一两个 API 函数是 Object Pascal 不能调用的,因为这几个函数不是用的 stdcall 调用约定方式,而是采用 cdecl 方式,这还不是主要原因,更主要的是因为这几个函数的参数采用的 C 语言特有的不定个数参数形势,这一点在 Object Pascal 中没有,OP 中只有 array of const 这种形势,但实际上还是一个动态数组,也就是说实质上是一个参数(数组型的,里面的每个元素是不同的类型参数)。其他方面就没有什么了。至于编译的代码效果,主要是看编译器的技术水平。Borland 是世界知名的编译器厂商,而且 Pascal 编译器是其专长,有人说产生的代码比 C/C++ 的差一点,估计是没有反汇编研究过。如果你的程序全用 Delphi + SDK 而不用一点 VCL 的话,速度绝对和最优秀的 C++ 编译器产生的代码不分伯仲,而且体积还要小。VCL 的封装比 MFC 高级的多,在消息处理上采用的委托模型是建立在动态函数(也是一种虚拟函数)机制上的,这个开销是比 MFC 大,但是速度上的损失只是微乎其微的。不像有些人说的那样消息一多就慢的不得了。多线程如果用的好,完全可以减少这方面的损失。反正我用 Delphi 编多线程的程序,直接用 Win32 的 CreateThread 也习惯了,偷点懒,就用 Delphi 封装的 TThread 线程类。VCL 兑线程的支持不好,这是事实。但是数据库控件不存在这个问题。我的同学稿电子设计用的 Protel 99 软件,那么著名而庞大的系统,其实就是用 Delphi 5 编写的,从头到尾,从外表到核心,都是 Delphi 的杰作。好像 Protel 已经有点历史了,过去的 DOS 版本是用 Pascal 写的。所以说,工具只是个工具,就看你怎么用它了。笑傲江湖里的令狐冲学了独孤九剑,用的一样是剑,威力就是大。Delphi 提供的功能我觉得已经很多了,有很多我还不知道。比如去年网上听说俄罗斯的程序员用 Delphi 做了 VXD 出来,我的差点晕倒。还是很佩服俄国鬼子,水平是高!说了这么多,只想抛砖引玉,千万别招来 C/C++ 程序员的骂声。其实我最开始也是学 C 入门的,呵呵。
IAmKylix 2001-04-21
  • 打赏
  • 举报
回复
楼上的水平很高!
tiongkohlang 2001-02-15
  • 打赏
  • 举报
回复
我不是一个程序员,只是一个编程爱好者,在此发表一下我的想法。
就我而言,我只用SDK编写Win32下的应用程序,不用MFC,就更不用说BCB和DELPHI的VCL了。不过在编写过程中我感觉最重要的有两点
1,你会不会算法?User interface的问题比较好解决,要完成一个具体的项目,还应该具有丰富的算法知识。
2,你会不会学习?许多人说用Win32SDK编程很困难,很难理解,很难控制,但我认为也挺简单的,关键在于你敢不敢学,会不会学,我发现论坛上的许多“胡言乱语“都是因为没有用SDK编程经验的结果,因此学得深入一些也没有坏处。编程技术日新月异,会学习才是最重要的。我觉得用什么工具关键在于项目的要求,以及你能不能按时完成项目,假如不需要细致的控制,用VB挺好的。假如需要细致的编程,就应该用其它的工具,VC,DELPHI,BCB,其实都差不多。
YuHao 2001-02-07
  • 打赏
  • 举报
回复
我想说说关于Delphi和VC编写程序的bug问题,不知道大家在这方面经验如何,我是觉得Delphi和VC程序的bug都很烦人,Delphi典型的错误是莫名其妙的跳出来一个AVs,退出程序的时候尤其严重,不过其他的地方好像还比较少问题.而VC也有不少问题,有人说VC写的程序非常稳定,一旦写成就不会出问题,我的经验绝不是这样!一般来说,VC写的程序还算是比较稳固的,但是一旦除了问题,可能就非常难缠,像我和周围的很多人都遇见过在Debug正常,而Release就一大堆问题;或者不用优化就一切正常,用了优化就无法工作;或者程序运行就跳出来一个内部错误的提示,碰到这情况你有什么办法呢?如果VC没有问题的话,那MS也不用SP1,SP2,...SP4这样一直出下去了.
我觉得Pascal语言还是有自己的优点的,比如在C语言中经常发生的字符串访问越界问题(我就曾经被这个问题搞得非常痛苦),在Pascal中很容易避免.固然Pascal比C语言要呆板,为了严谨也付出了很多代价,但是带来的好处我觉得也应该公正的评价.任何方便都是有代价的.我喜欢C++,我也喜欢Pascal(特别是Object Pascal),别问我那种语言更好,我两种语言都最喜欢,又不是娶老婆,怕犯重婚罪.
spdia 2001-01-30
  • 打赏
  • 举报
回复
delphi我不熟,但我喜欢vc的直接控制特别是发消息的时候,不知道delphi行不行.
有人说vc编界面困难,其实弄懂了消息和cwnd中虚函数的作用,编起来就容易了.
另外vc用很多现成的界面库可用我想跟vcl差不多如CJlibrary或者www.ucancode.com
特别是编com组件时vc的几个宏就解决了问题.vc编程时,你能看到mfc原代码,可以做到
心里有数.
zf 2000-08-15
  • 打赏
  • 举报
回复
我以前用VC,但当我遇见Delphi后,我真的喜欢上它了!但VC也没有放弃!
sjysh 2000-08-14
  • 打赏
  • 举报
回复
Delphi是很优秀的开发工具,我目前所能体会就是不可言传的‘优美’!
deardelphi 2000-08-14
  • 打赏
  • 举报
回复
delphi是很优秀的工具.不要放弃
JGTM2000 2000-07-16
  • 打赏
  • 举报
回复
我从小学Basic出身(那时候是没办法),后来学经典的Pascal(我个人认为其严谨的作风和通俗易懂的语法对于一个真正的程序员来讲是至关重要的),再后来学C++(有了Pascal的基础,学C++就像在学习飞翔,否则那叫扑腾)。在开始编Windows程序的时候用的是还没有MFC的VC++1.5,感觉自然跟用MASM编译的DOS程序不一样。直接用API写Windows程序虽然累,但那是基本功,好比基本的编程素质是不可或缺的。随后接触了Delphi,慢慢领悟了她的精髓,从2.0到5.0,从写有界面的程序到写基于socket的service再到COM,我真的很喜欢她。不过仔细想想,其实真正的原因是你要有编程的素质,编程的基础,编程的感觉。这样无论是VC还是Delphi还是BCB,他们无非是你的兵器,只要你底子好,一根筷子也能伤人于无形的说。所以你学什么好呢?还是在抉择中慢慢领悟编程的内涵吧。

btw, 我现在同时用VC++和Delphi写Windows平台程序,按zwok的说法,我是不是真的可以同时用two words形容自己了呢?嘿嘿嘿。。。大家同喜
JGTM2000 2000-07-16
  • 打赏
  • 举报
回复
如果说VCL对Windows开发接口封装是牵强,那我,只好仍然坚持认为MFC是一套API了。即便是ATL,哎,还是不说了吧,another two words: POOR.
当然,各有各的优缺点,不能一概而论,不然世界上也不会有那么多人拥护Delphi及其衍生了(而且还自豪的称自己为聪明的程序员)。只能说相比MS自己的Windows开发类库和开发工具而言,Delphi就显得优点大大的多了,当然作为它的精髓,Object Pascal也功不可没。
zwok 2000-07-16
  • 打赏
  • 举报
回复
如果想做一个真正的程序员就用(学)VC++(C/C++)
如果想做一个聪明的程序员就用(学)DELPHI

个人的意见认为,C/C++的语法自由随意,写起程序来有如在一张大大的白纸上作画,这种感觉不知有谁在DELPHI/PASCAL上体会过。
JGTM2000 2000-07-16
  • 打赏
  • 举报
回复
“而且pascal语言的确不如C++语言,它号称的‘优美’根本就是迂腐”
我怎么看不明白?劳驾举个迂腐的例子?这儿有人用Delphi写COM吗?Object Pascal写COM的时候迂腐吗?VCL的TObject迂腐吗?Only two words: PERFECT.
RuFeng 2000-07-16
  • 打赏
  • 举报
回复
delphi我用过,VB,VC,C++Builder我都用过,我觉得我最喜欢就是VC了,灵活,对比delphi,真不知是什么东西(我是从写程序来说的),看也不好看!用它只有一个好处,就是编译的速度快,而C++Builder也不见得什么好,写出来的程序大,里面包了不少没有用的东西,而且编译奇慢,从语法上看,还象一点C,但根本就是变形的C,用起来那有VC方便啊!其实从方便上说,delphi还不及VB,只不过它编的东西小一点,可以支持一些中级一些的东西!所以我真的很希望inprise公司早早倒闭!免得大家为此争吵!
IAmKylix 2000-07-16
  • 打赏
  • 举报
回复
程序设计的精髓在于编程理念及精益求精的态度,肤浅的停留在编程工具的讨论上堪称迂腐,在此抛砖引玉,实为听取大家意见。

大家彼此相互学习,相互促进,让中国的程序员屹立于世界,才是共同目标。

补充一点,烂货VB也能写出很好的结构化程序。

谢谢参与!继续...
蝈蝈俊 2000-07-16
  • 打赏
  • 举报
回复
vc++ 、delphi 我都喜欢,所以我两个都学。真的让我说出喜欢那个,很难。
w102272 2000-07-16
  • 打赏
  • 举报
回复
呵呵,用VC练水平,用DELPHI RAD 赚钱。
JGTM2000 2000-07-16
  • 打赏
  • 举报
回复
详细的评比数据供IAmKylix兄参考:
Delphi 5: User Rating Based on 2725 ratings
Features 4.6
Ease of Use 4.6
Power 4.3
Reliability 4.2
Overall 4.4 / top 5%

C++Builder 4: User Rating Based on 1205 ratings
Features 4.2
Ease of Use 4.2
Power 4.0
Reliability 3.9
Overall 4.1 / top 5%

Visual C++ 6: User Rating Based on 1250 ratings
Features 3.2
Ease of Use 2.7
Power 3.0
Reliability 2.7
Overall 2.9 / top 50%

结合我的感受,建议你Delphi和VC都能精通,结合起来,相得益彰,不亦乐乎的说。
加载更多回复(7)

1,649

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 非技术类
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧