同样地写一个大型MIS软件,用Delphi比用VC的开发速度快n倍。按照普通的程序员的水平来进行编码,Delphi使用VCL,VC使用MFC,那么VC的效率要比Delphi高,如果二者同时使用典型的C时期的swith case (Delphi中使用Case of)进行消息循环的话,二者的开发周期和效率差不多。
我觉得C的流行应该是由历史原因造成的,
上世纪七八十年代的程序员喜欢一些细节上的技巧,
C的出现无疑满足这种欲望,
毕竟写 "a = (b>c)?d:e;" 比写"if b > c then a := d else a := e"要方便得多;
但时至今日,
对大系统而言,
代码的清晰性与可读性才是更重要的,
c在这方面似乎不如pascal。
至于效率,
"C++"及"Inc(C)"编译成汇编码后都是"inc eax",
我不觉得认为有什么特别的差异(不考虑编译器的因素),
其实真正决定效率的还是程序员的好坏;
另外由于pascal在国际上没有标准化,
所以borland对pascal似乎更感兴趣,
一直在企图将它变成一门清晰简洁高效的开发语言。
(我想cbc的编译速度慢应该是因为c++语法的复杂性,而非大家指责的采用pascal语法的vcl的缘故,vc的编译速度同样也慢)
所谓“而Pascal是设计用来教学的"应该是谭浩强在80年代初写的pascal教程里的话吧,不知为什么到现在还有人拿来引用。