也谈 Delphi vs VC++

原创 2000年09月15日 06:39:00
哈哈,最近好象关于 VC 和 Delphi 比较的帖子特别多.
看了sundyl的帖子,有些话好象不吐不快

>>"...Delphi的程序员就不同了,他们应为VCL的巨大便利,变得主要是使用控件..."
sundyl您可能不知道2个简单的事实:
1) 99%的控件(VCL)是 Delphi 程序员自己开发的,不是Borland提供的
我甚至偏激的认为:写控件是个基本功,不会写控件就算不上Delphi程序员 :-)
虽然,这会得罪一批和我一样自认为是 Delphi 程序员的人。
2) VCL和Delphi没有逻辑必然,它是一种先进思想的集合,C++照样能用,CBuilder就是例子。

事实上,sundyl拿使用VC和Delphi的程序员进行比较是不公平的竞争~~~
因为历史的因素VC++程序员平均素质要高一些。
正确的做法应该是:
    拿基础素质相同的2个程序员,分别去学VC和Delphi,最后比较他们的编程能力.

不过,我也没做过这样的实验, 不能凭我的想象说结果会怎样 *_*
但拿我来说:我是先学的 Basic, C/C++,后来才学 Delphi/Pascal
用了 Delphi 之后,很多人可能都有我类似的感觉:
感到可以做到很多以前想做而做不到的事,而且我用节省下来的时间
学到了更多的东西,甚至反过来加深了我对C++的理解。
事实上,绝大多数 Delphi 程序员原先曾是 C/C++/Basic 程序员.

拿"多重继承","宏"."{}","++" 之类的语法比较来评判优劣是一种缺乏开放心态的表现
要论语法的先进性,Object Pascal 中的例子实在很多,可以信手粘来.
其实Object Pascal中有多重继承(New一个ActiveForm 对象的自产生代码中就可看到)
但严格限制它的使用。原因我不说大家也知道。
不引入"宏"更是如此。(严格说来 Delphi中的 inline assemlber 函数有宏的特征,
这种扩展不是 Object Pascal 基本语法,而且非高手不会需要直接嵌汇编 ^_^)
可以说Object Pascal 一直在吸取 C/C++ 的精华,但不是全部。 :-)
早在 Turbo Pascal 5.0 的时候,就从 C 里吸收来了 break, continue
在BC之前就率先支持完整的OOP语法,还有IDE ,那时的 C 只有命令行呢。
还有比较 {} 和 begin end 之类的细小比较就更是萝卜白菜了,
希望 sundyl 以一种开放的心态来看 Delphi.
关于"{}" 和 "begin end",至少我觉得Delphi程序是可以用嘴交流的程序语言(为数不多,类似的还有SQL)。
什么意思?试着向你旁边的同事随便口读一段C源代码就知道了(包括符号哦)。
(我曾把一段Delphi程序放到 TTS(全程语音)中用机器读,哇,太酷了~~)

顺便,我还想对有意学 Delphi 的程序员谈谈我学Delphi的时候发现的一个窍门,
就是:
Object Pascal 语法中有一种自相似性,
不到万不得已,Object Pascal 不会引入新的语法形式。
在学 function, unit, object, program 等都能体会出来这种自相似性。
比如我当初先学了 record(相当于 struct), 懂了oop概念后,自己就猜出来 object 的基本语法了。

想到哪写到哪,谢谢您能读完,还有我还没提到数据库,
我觉得把Delphi和数据库一起谈有时是个误导,
让人只看到Delphi门槛很低的一面,妨碍了人们认识她实际的强大。

用了这么多年Delphi,领悟到Delphi的一点哲学:
随着社会的进步,分工的细化,合理的规则是:你有权知道一切,但不该是强迫的.

再谈Delphi vs VC++(非常精彩)

这是一篇非常精彩的文章,无意中在网上发现, 比起原来《程序员》发表的开发工具大比拼更专业。 可惜不知道作者是谁,如果作者看到或者有谁知道作者, 请一定和我联系。(mail:jiang...
  • slj_win
  • slj_win
  • 2014年06月02日 11:06
  • 484

【IDE-Visual Studio】Visual Studio对常用第三方库的包含,VC++目录修改

vs2005 vc++ 统一修改所有工程的目录配置 打开Visual Studio 2005,选择“工具”-“选项”,如下图设置“包含文件”和“库文件” vs2010 vc++...
  • chenlu5201314
  • chenlu5201314
  • 2017年03月21日 11:27
  • 561

带你玩转Visual Studio——VC++的多线程开发

编程思想之多线程与多进程(4)——C++中的多线程一文中讲了VC++的多线程的用法和用例,本文接着这个话题作进一步的讲解:SuspendThread和ResumeThread的用法,线程与同步锁的封装...
  • luoweifu
  • luoweifu
  • 2016年05月18日 23:55
  • 11703

对VC++工程编译过程的梳理

对VC++工程编译过程的梳理VC++的项目和解决方案文件解读,无非就是利用这些信息进行一个软件的编译,这些文件里面是存放的项目的配置和工程的组织,类似于makefile文件. 但是只有VC++6.0的...
  • liquanhai
  • liquanhai
  • 2016年06月02日 19:50
  • 1862

守护进程概念及实例

守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进 程。Linux的大多数服务器就是用守护进程实现的。比如,...
  • yixianfeng41
  • yixianfeng41
  • 2017年03月01日 20:08
  • 238

VS2010打开VC++6.0创建的项目

本来想着这么点事儿,自己搞懂了就OK了,可又想到也许写出来能帮到一些人。      事情是这样的, 老师刚给了一个项目,demo是VC++6.0做的,我用VS2010打开后报错 如图所示 ...
  • u011694809
  • u011694809
  • 2015年05月14日 21:29
  • 2213

VC 2012 中调用WebBrowser简单的实现过程(图解过程)

在打开 Visual Studio 2010 后点选文件菜单 然后选择新建->项目 这时系统会弹出新建项目窗口,选择VC++的MFC应用程序,然后再设置一下项目保存路径和名称后点击...
  • supermanking
  • supermanking
  • 2013年04月24日 17:15
  • 4744

Delphi中怎么调用VC++创建的动态链接库

Delphi以其独特的面向控件的研发方式、强大的数据库功能、快速的编译技术及简单易学的编程特性,使得他自发布之日起即格外引人注目,许多程式员也因此将他作为最佳选择的研发工具。然而,Delphi在科学计...
  • slj_win
  • slj_win
  • 2014年07月29日 21:31
  • 1112

VC++ 2010下安装OpenCV2.4.3,并编写测试程序

OpenCV 2.4.3安装 系统环境:win7 (64位)系统 + x86机器 + vc++2010 安装OpenCV 1、 下载OpenCV从本站下载栏目 http://www.opencv.or...
  • yuanlu837
  • yuanlu837
  • 2013年10月15日 15:55
  • 12378

谈VC++对象模型

——谈VC++对象模型 (美)简.格雷 程化    译 译者前言 一个C++程序员,想要进一步提升技术水平的话,应该多了解一些语言的语意细节。对于使用VC++的程序员来说,还应该了解一些VC++对...
  • otuhacker
  • otuhacker
  • 2013年08月04日 16:32
  • 358
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:也谈 Delphi vs VC++
举报原因:
原因补充:

(最多只允许输入30个字)