最近,这三种工具都用了一下,Delphi我最精通,C#次之,Java刚入门。我觉的工具差别不大,开发效率也差不多,主要取决于程序员的能力。但是,我还想比较一下,还有Delphi真的是日落西山了。从语言角度
C#和Java都支持现在流行的语法元素,它们之间几乎没有差别,而且都是类C语法,简直就是双胞胎,Delphi的Pascal语法没有多少改进,仍然不支持范型等语法,运行期类型信息依然缺乏。但是有些C#的语法已经有点过分了,比如支持在不同的文件中书写同一个类的不同部分,这很要命的语法,会让一些源代码很难理解,还有对其他类的使用静态方法扩充,都会产生非常恶劣的后果。又支持拉姆达表达式,我想有些人可以把源代码写成天书了。从语法美观角度
C#和Java都是不堪入目的,变量随处声明的恶习,让观看源代码浪费了很多不必要得时间,现在我才理解为什么,使用Java的时候那么重视类图的绘制。Pascal是很优美的,漂亮多了,整齐,美观。要知道,很多伪代码都是类Pascal语法的,怪不得Delphi程序员都不怎么写框架图呢,因为程序本身就非常直观了。调试器
C#的最好,Pascal的次之,java使用的调试器好像很多,都不怎么样。IDE
C#的最好,Pascal的次之,java使用的也够泛的。类库
C#的最好,Java不错,Pascal一塌糊涂,C#不管怎么样,.net FrameWork提供了大量丰富的类实现各种应用。Java也有很多不错的FrameWork,Delphi的VCL一百年不动摇,第三方控件良莠不齐,质量难以保证,Delphi自带的一些第三方控件都Bug无数,要做商业开发简直是拿我们的信誉在作赌注。C#和java的类库质量都相当不错。跨平台
Java可以,C#只能在微软自家的一亩三分地里面搞搞,Delphi,也是如此。总结:
Delphi开发效率一般,C#最好,Java次之,Delphi不适合商业开发,用于共享软件和爱好者开发还是很不错的。但是,例外的是,如果你用Delphi开发一些比较底层的应用,要比C++好。

解决方案 »

  1.   

    最后一句,为什么?因为我觉得,VCL很不错,Pascal的语法也比C强。Delphi的一些向导自动生成的程序框架也不错。
      

  2.   

    但是,例外的是,如果你用Delphi开发一些比较底层的应用,要比C++好。......
      

  3.   

    delphi2006也有一些新语法的。ide感觉还是delphi的 舒服 。。
    vs 2005 用了 vc 的很难受。。
      

  4.   

    很好我也这么认为的 以前在没有.net之前delphi真是不错但是现在delphi不行了啊
      

  5.   

    C#不能象delphi一样按住ctrl+关键字即可查看源码,这给学习和使用造成不便。
    delphi的第三方组件库远比.net丰富,虽然许多有BUG,但都不是要命的,fastreport/reportbuilder/vclskin/devexpress/raize都是非常优秀且成熟的,这些精彩的东西在C#中很难发现。
      

  6.   

    C#的语法虽然精彩,但其应用因.net而被限制在一个很狭窄的范围:编写基于asp.net的web应用,试想,谁会用C#编写基于win32的应用呢,比如谁会用它编写游戏、数据库应用呢?效率不及delphi/VC,而且必须带上.net库。
    delphi2006其实是一个很好的东西,可以用ObjectPascal一种语法编写基于.net/win32的应用,其能力好象没有比vs2003差。
      

  7.   

    类库
    C#的最好,Java不错,Pascal一塌糊涂,C#不管怎么样,.net FrameWork提供了大量丰富的类实现各种应用。Java也有很多不错的FrameWork,Delphi的VCL一百年不动摇,第三方控件良莠不齐,质量难以保证,Delphi自带的一些第三方控件都Bug无数,要做商业开发简直是拿我们的信誉在作赌注。C#和java的类库质量都相当不错。
    ================================================================
    就凭这几句,楼主显然就对.net环境没多少了解。
    都不必比第三方组件了,等.net中把D7 VCL的组件实现得差不多时你再出来吹也不迟。
    不过可以预言,至少三年之内你是没有机会的。
    仅仅把D7 source目录中的.pas简单搜索了一遍,有3853个类定义(不包括forward的class描述)。
    可以毫不夸张地说,.net要达到目前Delphi的应用框架的丰富性,5年之内绝对没戏。
      

  8.   

    .net为什么非要达到delphi的某些标准呢?还有那位sxqwhxq兄弟,你用过.net吗?
      

  9.   

    哦。原来VCL这么丰富啊。呵呵。5年之内.net的丰富达到VCL的状态?我不想争论。你自己去了解一下吧。C#的类库质量之所以好,你要去看一个好像叫jeffrey richter人对微软的火气十足的批评你就知道了,因为C#中绝大多数类,并不是重写的,而是对原有的win32代码的封装,比如SSL,MD5加密之类的。经过了这么多年的沉淀,质量能不好吗?呵呵。VCL是什么?你还没完全弄明白呢,VCL最主要的(指面向应用的)是对原有Win32 GDI的封装,其他部分封装的很少(Com封装也比较多)。可以说是极少。连一个性能计数器都没封装,我以前倒是写过性能计数器的Delphi封装,结果,到C#里面一看,人家都封装好了。线程池没有封装,windows的HTTP没有封装,SSL没有封装,对Pipe、Mailsolte没有封装,没有封装的部分多了去了!咳,你还要多学啊。
      

  10.   

    C#编写windows应用也很正常啊,我还真没听说,说什么C#应用范围是在Asp.net方面呢。我还用C#写Service呢,怎么了?很奇怪?我一点都不奇怪。
      

  11.   

    C#不能按住ctrl察看源代码?我日啊,你以为微软这么弱智?笑死了。你用右键点点看,里面有什么?里面是不是有察看定义?他的快捷键是什么?日,江河日下了,伤感,这是Delphi版的人作的回答吗?丢人死了。
      

  12.   


    VCL是什么?你还没完全弄明白呢,VCL最主要的(指面向应用的)是对原有Win32 GDI的封装,其他部分封装的很少(Com封装也比较多)。可以说是极少。
    ==========================================================
    VCL中只有基本的用户接口元素,还有ADO、ActiveX等少数东西是对Win APIs的封装。
    这些东西有多少?也就组件板中standard\additonal\win32\system\ado\win3.1\activex\dialogs几个部分吧。
    这些东西就是VCL的大部分???
    其他的数据库、Internet、WebService、多层结构诸如此类的那么多东西你都看不见?
    简直是笑话。
    VCL要是这么简单的话,ms也不至于学了7年才搞出类似的东西,还要挖人了。
    你确实还要多学啊。
      

  13.   

    另外,有了Indy,而且是跨平台的。还要“windows的HTTP”之类的垃圾干嘛?:)
      

  14.   

    还有ADO、ActiveX等少数东西是对Win APIs的封装。你把Delphi学精了再来和我讨论吧,不好说你了。你最好找个厉害一点的朋友给你指点一下啦。windows的HTTP的Bug比Indy少,抽象的比Indy好,整个体系结构比Indy成熟。Indy做的好又不好,好的方面提供了比较全面的网络开发的套件,不好的地方,他以为自己是根葱,不遵守VCL开发的习惯,弄得四不像。更不好的是,每个版本都没有保持接口级别的兼容性。
      

  15.   

    只有基本的用户接口元素?Com32基本上都封装了,这是VCL很大的一块。所有的Button,List,ListView,TreeView等等,都是Windows的标准用户组件,VCL加了个套子。懂不懂啊,还没学到多少皮毛,就在这里和高手叫板了,笑死了。
      

  16.   

    Delphi不适合商业开发?????
      

  17.   

    我觉得上面有些争论好像大可不必.
        VCL从Delphi6后,基本没有增加新的东西,所以“VCL最主要的(指面向应用的)是对原有Win32 GDI的封装,其他部分封装的很少(Com封装也比较多)”也就不奇怪了,就好比要用今天的现状同70年代比,说那个时候没mp3?没笔记本电脑?这不可笑吗!今天的现状本身就是经过了70年代才发展起来的,否定历史,不就是否定目前现状吗?C#和JAVA在很大程度上借鉴了delphi,这是一个不争的事实,同时也保持了与时俱进,跟上了时代的步伐,而VCL还在原地踏步,它们之间就没有了可比性,幸亏Delphi VCL当初的设计思想比较超前,不然就更落后了。不过VCL本身到目前为止并不过时,它是可以发展和扩充的,某些东西没封装,你们这些“高手”、“牛人”为什么不去封装一下,以有偿或无偿的方式提供给大家用呢?
      

  18.   

    C#不能按住ctrl察看源代码?
    我日啊,你以为微软这么弱智?笑死了。
    你用右键点点看,里面有什么?里面是不是有察看定义?他的快捷键是什么?
    日,江河日下了,伤感,这是Delphi版的人作的回答吗?丢人死了。
    ---
     感觉 vs比较麻烦的就是这里 
    鼠标点下右键 还要移动才能定位...
    不舒服..
      

  19.   

    什么语言都可以作商业开发的啦, 商业开发大多是小应用吹得大也没用,小就是小, delphi 绝对可以开发delphi的VCL 纯指是界面无素?  现在的东东多了 WebService, Data/WebSnap 这些不是 Win32 专有的吧, Apache/IIS都是可以用的, ECO I/II 也是高层的东东吧, Kylix 也算是 delphi 的一个元素吧, delphi 还是有发展的, 看看下代 turbo delphi 反映怎样再说吧, 不过没学的就不要学了, delphi 用得会上隐的(实话), 就目前的状况看, 不如学 c#c# 强那也要看设计者和推广的人是谁了, Ander拿着 object pascal 思想过去就搞了个新语言, MS 当然就借机发财了, $ + 技术强人能不风嘛c# 类库的确是最好的目前, 干净(不过好像纯洁度不高, 不是c# 自已写的), 大量的 seal 类, 不知道 3 年后 ms 会对这些 seal 的类作多少改动, 反正你是改不了地, ms 说的算, 反正以后是强人自已写, 新人跟 ms 大哥, 不过新人好像人数上占大优劣呵呵c# 和 pascal 都是非标准化的语言哦, 这么说不太对, c# 目前还不算语言, MS 新玩具而已, MS 玩具对偶们来说也是 TANK 了, 发展前途乐观(倒不如说是ms钱多), 不过目前运行得比 java 还慢, 这是实际体验多争也是没用, 看之后硬件发展了java 就不要说了, 吵得是最大声的, 野心大, 类库多得无法归类, 7-8 年前号称代替 C++, 4-5 年前号称取代企业级应用, 2-3 年前号称取代掌上市场, 主流都有 java 的份呵, 不过在下是不用的, 这个过于庞大的环境不合适偶这个年龄了, 偶更愿意用 C++ 现在
      

  20.   

    你们这些“高手”、“牛人”为什么不去封装一下,以有偿或无偿的方式提供给大家用呢?------------------------------------------
      温饱我还没有解决呢,为什么给你打白工??!! NND 以后这种P不要放
      

  21.   

    Delphi开发一些比较底层的应用,要比C++好======================================
    why?????
      

  22.   

    老蜗,我支持你!!大部分观点都支持你,但只是在Java这一块我有不同意见 hehe^^在Java世界里,面更广阔,更自由!只是在特定平台中效率不如MS的.Net,这是有情可源地,毕竟Java要照顾很多平台但跨平台、自由就是他最大的魅力每种语言工具,都有他适用的范围,现在写ERP,我想没有人会用纯ASM写吧...
      

  23.   

    学NET ,JAVA主要为了有饭吃。什么架构泛型对象都鸡巴扯蛋。DELPHI做的再好再优秀,没市场也没戏。
    任何语言,首先它只是一个工具
      

  24.   

    楼主在这儿挖了一个大坑, 专门来引这些Delphier来填, 着实不厚道!!!!有本事你到java版发发看, 看有没有人理你!还自以为是高手. 高手还需要讨论这些问题么???BS一下你.
      

  25.   

    主要是delphi 的地位很尴尬
      

  26.   

    C# 是ms原生的
    java 干脆自己跨平台
    delphi 只能算庶出
      

  27.   

    Delphi不适合商业开发????你说白话呢!!
    BS你一下,你去看看有多少商业软件是用DELPHI开发的!!!!!!!!
    再BS你一个,一个连连C#都没用通的人来说DELPHI不好......BS
      

  28.   

    楼主的观点应该还是相当片面的。
    Delphi还可以在它所得优势领域继续发挥作用,但这些领域正逐渐的被C#,Java等慢慢蚕食
    Delphi的前路是一个未知也很难去得知的东西,或许Delphi该寿终正寝了。
      

  29.   

    偶觉得楼主说的,一半主观,一半客观最后一句话意思不懂,如果做底层,可能还是C(注意是C,不是C++)要好些.并且C#之父是Java,之母是Delphi.
      

  30.   

    delphi还是天才的作品,对开发工具的推动作用很大,应该说还是引领了一个时代的,给很多开人员提供了很多便利。delphi3是一个杰出创新的产品,到delphi5的期间一直是版本3的持续完善,到版本7就非常成熟和稳定了,也因此创新没持续,版本7以后的产品感觉是没有什么作为,用户也没有感觉的到没有升级的必要。Borland ID 发展到今天还是很可惜的,很多时候能给人震撼,但是缺乏长远稳定目标(borland开的产品就好像我们有的程序员不停在修改抽象层一样),很多用户都没底。最失败的是delphi和C++builder绞在一起,完全是两个重叠的产品,没有自己的个性。从设计思想上来看,cuilderx是最好的产品可惜夭折了,C/C++本来是适用广泛的语言,有很多有广泛用户的库cuilderx仅仅是一个框架提供快速开发,也将一些第三方的库整合进来为开发人员提供便利,可惜c++builder不是这样的一个产品。
      

  31.   

    牛X啊,我delphi 都不精通,大家都讨论什么起来了
      

  32.   

    靠。争个屁啊Delphi,C#,Java还不都是人搞出来的东东。。有什么好争的能用的就是好东东。。
      

  33.   

    老板要你用c#,你delphi再精通也没戏!!其他同理.
      

  34.   

    回复人:BlueTrees(蜗牛) ( 一星(中级)) 信誉:88  2006-11-1 8:52:11  得分:0windows的HTTP的Bug比Indy少,抽象的比Indy好,整个体系结构比Indy成熟。
    ========================================================================
    1. Indy的HTTP有什么BUG?你说说。
    2. Windows的HTTP是个什么层次的实现?还“抽象的比Indy好”???
    您是不是还想说 Windows的CreateThread“抽象的比VCL的TThread类好”?
    您纯粹就是半懂不懂,其实不懂。
      

  35.   

    Windows的HTTP是个什么层次的实现?还“抽象的比Indy好”???你说说看啊,是什么层次的实现?
      

  36.   

    回复人:BlueTrees(蜗牛) ( 一星(中级)) 信誉:88  2006-11-1 8:54:51  得分:0

    只有基本的用户接口元素?
    Com32基本上都封装了,这是VCL很大的一块。
    所有的Button,List,ListView,TreeView等等,都是Windows的标准用户组件,VCL加了个套子。
    懂不懂啊,还没学到多少皮毛,就在这里和高手叫板了,笑死了。
    ==========================================================
    断章取义、歪曲别人的原话就是你这“高手”的本事吗?
    我前面说的是啥?看好了,我说的是:
    VCL中只有基本的用户接口元素,还有ADO、ActiveX等少数东西是对Win APIs的封装。是象你说的那样吗?
    而且要较真一点,你说的这个:
    ====================================================
    VCL最主要的(指面向应用的)是对原有Win32 GDI的封装,其他部分封装的很少(Com封装也比较多)。
    ====================================================
    这才是狗屁不通。
    还“VCL最主要的(指面向应用的)是对原有Win32 GDI的封装”???
    猪头啊你?
    你连Windows APIs的三大基本模块Kernel、User、GDI的分类都搞不清楚吧?
    你先搞清楚那些窗口相关的东西是User32中的还是GDI32中的再来自诩“高手”也不迟。我一直对你留面子,不抓你的小辫子,你还忘乎所以、猖狂起来了。那也就别怪我接下来对你不客气、好好修理修理你了。
      

  37.   

    MS 收购的那个 ERP 好像也是Delphi开发的,这种应用应该算商业应用了哈。
      

  38.   

    既然你这么无知还狂得不得了,那我就浪费一点时间教导教导你。
    都不说Delphi/VCL了,就说说.net吧,你不是自诩“高手”吗,我看看你能撑多久、面子往哪搁。
    我说你“对.net环境没多少了解”你还别不服气,就随便给你指出一点,比如你说的:================================================================
    我以前倒是写过性能计数器的Delphi封装,结果,到C#里面一看,人家都封装好了。
    ================================================================就你这二把刀水平,你还笑人家?我先来笑笑你:
    我以前倒是写过性能计数器的xx封装,结果,到VB.net里面一看,人家都封装好了。
    我以前倒是写过性能计数器的xx封装,结果,到C++/CLI里面一看,人家都封装好了。
    我以前倒是写过性能计数器的xx封装,结果,到Delphi.net里面一看,人家都封装好了。
    我以前倒是写过性能计数器的xx封装,结果,到Chrome.net里面一看,人家都封装好了。
    ...
    还不明白?那就继续:
    我以前倒是写过一个对话框函数,结果,到VB里面一看,人家MessageBox都封装好了。
    我以前倒是写过一个对话框函数,结果,到VC++里面一看,人家MessageBox都封装好了。
    我以前倒是写过一个对话框函数,结果,到Delphi里面一看,人家MessageBox都封装好了。
    我以前倒是写过一个对话框函数,结果,到BCB里面一看,人家MessageBox都封装好了。
    ...
    还不明白?那你基本属于没救的一类。性能计数器类那是“人家C#都封装好了”的吗?
    你连什么是C#提供的功能,什么是.net环境提供的功能都分不清,还跳出来大言不惭?
    性能计数器类是.net环境的系统类之一,是.net对相关Win APIs的封装,C#只是调用。不只是C#,VB.net、Delphi.net...等等等等,凡是支持.net环境的语言/开发工具都可以直接调用,哪里谈得上什么封装?
    你也不看看性能计数器类存在于哪里?system.dll!跟C#有个鸟关系。
    不服啊?自己去看你ms大爷的科普文章:
    http://msdn2.microsoft.com/zh-cn/library/system.diagnostics.performancecounter.aspx以前就是有把Windows APIs也算成是“VC++的库”的搞笑之辈,看来你也是和他们差不多的糊涂蛋。(待续,我一会回来继续教育你)
      

  39.   

    桌面产品用C#做的太少了,MS自己的也不用这个做塞,为什么呢?
      

  40.   

    我用了12年的Delphi(包含一段Turbo Pascal),楼主的话不敢苟同。跨平台Kylix早就到Linux下了,否则我现在还在用C(我单位是做Linux的),现在FreePascal兼容Delphi语法都可以编嵌入式了从驱动到控件,从kol到vcl,每次使用我都觉得Delphi的精髓再加深,RTTI接口就可以调用动态运行期类型,真不知道你怎么说没有,实在不能苟同您的说法
      

  41.   

    但是,例外的是,如果你用Delphi开发一些比较底层的应用,要比C++好。============================>
    凭这句,至少c++你是菜鸟
      

  42.   

    RE:桌面产品用C#做的太少了,MS自己的也不用这个做塞,为什么呢?
    客户机上还不能包证所有的windows系统都有.net环境支持。
    这个过渡期不会太短,当然到了下一个操作系统,还是一个过渡。
      

  43.   

    C#只是.NET的一个分支代表而已
    .NET旗下的所有语言包括VB.net VJ.net ASP.net
    都可以使用封装好API的类库DELPHI_GUY不必抓着这点 派楼主的不是----VCL最主要的(指面向应用的)是对原有Win32 GDI的封装
    这句话是有误的 但没错到很离谱的地步----VCL中只有基本的用户接口元素,还有ADO、ActiveX等少数东西是对Win APIs的封装。VCL是所有可视组件的类库总称 可视组件是指有设计期和运行期状态 可以放在静态窗口或者 
    窗口中进行设计的可视类,运行时有些组件类用户可以看到,有些是看不到的
    并不是什么所谓的用户接口元素,ADO,Activex都是COM范筹内的东西,这个不能称为什么WIN API,它们都受管于WINDOWS的 COM管理器 由COM工厂创建和使用以及生存期管理
    COM的理论也是.net代码托管理论的前身,不管哪种语言都可以用遵循COM规范 生成规范的M$的COM对象来使用。如果研究过MFC的话,其实MFC也不错的,对API提供了相当程序的封装,起码作UI这块就不必太费劲。不必在这个上面较真。--- INDY的BUG
    INDY不管怎么样 大家都是拿来用的
    我个人感觉 INDY的确不怎么样 用起来怪怪的
    .NET要成熟好用的多 关于JAVA的理论 楼主还是有所欠缺的
    JAVA的类库更能称得上是完善
    因为JAVA的面太广了
    光一个Utils里面的类 就是。NET不及的
    而且.net抄JAVA还没抄好 Iterator 硬改成enumarator
    不过在接口技术设计和应用上 .net封装的还是很不错的
      

  44.   

    to xiu1224(xiuxiu)
    RTTI的确可以取到运行时对象信息
    但是类信息太少了
    这是编译语言的通病,似乎是无法克服的
    你没用过.net和JAVA 体会不到反射技术的强大与好用 
    尤其带给系统设计上的优势
      

  45.   

    改天Photoshop用C#写了,或者Office用C#写了我就换C#哈哈
      

  46.   

    做技术的,都TM喜欢排挤,楼主也是一样,看你也是泛泛而谈,真正.net,java,delphi你能算得上是精通吗,还号称高手,没见过你这样的高手,要想真正的说服人,得拿出点东西了,别靠一张嘴在那里叫嚣,很明显,你写这点东西的时候根本没有一个客观的态度
      

  47.   

    楼主,我想学Delphi,要不你教我呀?
      

  48.   

    用熟了都一样,不过c#的IDE真的很牛。
      

  49.   

    sxqwhxq(步青云) ( ) 信誉:85    Blog  2006-10-31 21:59:24  得分: 0  
     
     
       
    C#不能象delphi一样按住ctrl+关键字即可查看源码,这给学习和使用造成不便。
    delphi的第三方组件库远比.net丰富,虽然许多有BUG,但都不是要命的,fastreport/reportbuilder/vclskin/devexpress/raize都是非常优秀且成熟的,这些精彩的东西在C#中很难发现。  
     
    ---------------呵呵,其他的我都不评论,只是觉得这个老哥很搞笑。
    是个IDE就会实现这样的机制吧。^_^只不过你没细心发现罢了。
    不过你倒是可以用ECLIPSE,那里面好像默认的也是按住CTRL能看源代码。
      

  50.   

    其他的不知道,就美观问题来说.
    Pascal系和C系可能的观点就不同了,本人的C++最精通,Java次之,然后是C#, 都是C语法系列的.
    我不会Pascal,不过小时候学BASIC的时候,能看懂Pascal的代码.
    我丝毫不觉得Pascal的代码很美观.
      

  51.   

    谁都不是语言大师吧,讨论又变成了人身攻击
    横看成岭侧成峰,贬低别人证明不了自己
    lz对delphi的理解应该不错的,发这个贴目的大概也是引导
    可惜....
    看看几年前的foxpro和pb吧
    delphi是好东西,用的人嘛...
    不说也罢
      

  52.   

    delphi的扩展pascal语法还是不错的,范型这些东东,有好有坏,写程序,太高深的,不用也可以,维护性好,程序员都不是聪明人,程序从来不是现实世界的反映类库,borland的定位没有sun和ms明确
    封装的目的性是做项目,卖中间件,虽然java ee实际就是个中间件
      

  53.   

    啥叫客观态度?
    有人是给GCD的四个代表教育得傻了吧?
    啥都好就是啥不好,难道人家美国军方会不用ada而用你c++?
      

  54.   

    好用就行。我以前一直用Delphi + VC开发。但是现在好像WEB越来越流行,项目动辄就用BS方式,所以也开始学JAVA JSP了。微软的.NET一套个人比较讨厌(没有JAVA“绿色”、跨平台;开发WEB应用程序逻辑乱七八糟;最恶心的是单机应用还要用中间代码,吃饱了撑的。其实.NET如果不跨平台,何必像JAVA一样,完全可以编译成本地代码,这样速度也可以提高,内存需求也可以降低)。
      

  55.   

    那D7没市场了我们是学C#还是学JAVA能更好的混口吃的。不要骂我,纯菜鸟瞎说的。
      

  56.   

    C#还有一个不爽的地方,不知新版本改进了没有,即无论类多复杂,其定义和实现都放在一起,程序大了的时候,从整体上把握起来有一定困难。
    其实无论C#,甚至delphi我都学得不精,但我还善于用所学的知识解决问题和创造财富,蜗牛虽然星不多,但很倡狂,不说技术怎样,至少人品是很差的。
      

  57.   

    继续对楼主这种连什么是系统功能、什么是封装的系统功能都分不清的“高手”进行.net教育。在中国的技术论坛上,对于.net这个概念可以说混乱得一蹋糊涂,很多人把.net等同于vs.net开发工具,或者是vs.net开发工具的类库。在ms的术语中,.net这个词基本是指.net环境。
    .net环境简单地说就是运行在Windows上的一个操作环境;要类比的话,就相当于Windows 3.x和更早版本是运行在DOS上的一个操作环境。
    之所以严格来说叫“操作环境”而不是操作系统,那是因为他们并没有实现操作系统的完整功能,还需要依赖底层操作系统的支持。对于什么是Windows APIs,什么是开发工具的库绝大多数人还都能分得清。
    但是自从.net环境把它的系统功能层(这个就叫做“.net框架”)从Windows那种函数式的APIs升级成面向对象的接口之后,某些明白的人反而糊涂了,就比如楼主这种“高手”。看见是个类就以为是“封装的”,闹出个把.net环境的系统功能当成是C#封装的库这种笑话。就算你非要把.net框架和VCL框架比较(其实不是一种层次的东西,可比性并不高),那你也要先了解两者的定位和特点吧。
    .net框架是一个系统级框架,它的主要目标和着眼点在于以一种更简单、易用、面向对象的方式为应用软件提供支持,以取代传统的基于函数调用的Windows APIs(正如基于函数调用的Windows APIs取代了基于中断的DOS系统功能调用一样)。
    尽管由于.net框架的特点,它对于应用开发的支持比传统的Windows APIs好很多(比如提供了WinForms组件集,以及可视化设计器等等),但是这不是它的要点,而且在可预见的时间内它也不可能强大到使各种开发工具的应用框架没有生存余地的程度。而VCL框架,是一个应用开发框架,它的目标是为软件开发者提供一种简单、快速、系统无关(尽可能吧)的创建应用软件的支持。它的设计思想是面向功能的、面向应用的。而不是简单的对系统功能的重新包装(那是MFC的方式,而且被证明是拙劣的、至少是不高明的)。
    所以楼主说VCL这没封装、那没封装是很可笑的,如果我以一种更有效的、系统无关的方式实现了相同或者类似的功能,干嘛还要封装你的系统功能?(更何况直接调用你说的那些系统不是也很简单吗?要证据?你不是都说了“抽象的比Indy好”吗?)Delphi是一个可以运行在.net环境中的开发工具,在使用.net环境的系统功能方面和其他任何.net环境中的开发工具一样,并不存在所谓“人家C#都封装好了,你Delphi没封装”这种可笑的“事实”。
    这么说吧,不管你.net framework发展到多么强大,Delphi都可以使用你的功能,并且在你的基础之上进一步提高(比如Delphi.net和C#Builder就可以使用ECO、DbExpress、BDP等等VCL.net特性,ms C#就不行)。VCL可以实现在.net环境中、也可以实现在Win32中、Win64中、Linux中...继续发展。楼主的当务之急不是自诩“高手”、跳出来指点江山,而是先搞清楚一些基本概念,让自己有一个起码的评头品足、说三道四的技术资格。否则不但说服不了别人、遭人耻笑,还浪费了自己的时间。好自为之吧。
      

  58.   

    C#还有一个不爽的地方,不知新版本改进了没有,即无论类多复杂,其定义和实现都放在一起,程序大了的时候,从整体上把握起来有一定困难。
    =================================
    可以用#region #endregion 把代码折叠起来
      

  59.   

    各位Delphi的同道,就不要和做网页的人争了吧~~
      

  60.   

    从关看到了尾说实话,我是没有发言权啦,因为我连C#、JAVA都没有用过,老实说,我还可以在这里靠做程序吃饭应该感谢上苍了:)在我看来,无论哪一种语言,都只不过是人家开发出来的一个工具。
      

  61.   

    Delphi开发效率一般,C#最好,Java次之,Delphi不适合商业开发,用于共享软件和爱好者开发还是很不错的。
    //------------------------
    这么多在开会,谁放了一个馊屁?根据我的了解,目前超市/药店/酒店里的收银系统,社保资金管理系统、医院管理系统、公务员信息管理系统等中、大型应用,delphi占了相当的市场。