zoukankan      html  css  js  c++  java
  • Delphi 语言

    自1995年Borland公司发布Delphi 1.0以来,Delphi受到很多开发者的亲睐,到1999年发布Delphi5,Delphi以其开发快捷、控件丰富、易于上手等优势吸引了众多的开发者,用户人数达到高潮,一度超越Visual
     Studio。可是好景不长,在推出Delphi7之后不久,Borland公司也走向衰败,最终被人收购,仅卖了区区7500万美元。
     
    Borland公司倒闭的主要原因是公司财务出现困难,内部矛盾上升。但我认为深层次的原因是产品定价死板且价格过高,记得当时一套Delphi正版要卖68000人民币,而同期的Visual
     Studio仅卖一万多人民币。过高的定价导致很多人放弃使用正版用盗版。这可能是Borland公司财务困难的主要原因。
     
    一、倒闭后的版本变迁
      Borland公司倒闭后,先是到易博龙手中,再转到微软,最后到Embarcadero手中。Borland的最后版本是Delphi7。之后有Delphi2005到Delphi2010,这些版本基本不受Delphi开发者关注,因为D7就用得很好。Embarcadero推出DelphiXE,版本升得很快,目前已经到了XE10.2。并在XE5开始支持手机开发。引起一些Delphi的关注。
    二、Delphi目前的用户人群
    Borland公司倒闭后,导致很多Delphi爱好者信心产生动摇,加之Jave和.net兴起,许多开发者纷纷转向,放弃Delphi,Delphi用户群体急剧流失。经过若干年后,剩下的Delphi开发者估计只剩下三类人:
    1、业余开发者,转向其他开发工具比较困难的人;
    2、  Delphi死粉,这类人很少,程序员毕竟要吃饭,不会有人死抱着Delphi失业的,所谓死粉应该还是那些不愿意或有困难转向的人;
    3、  手头有大量已有Delphi系统,无法全部重写,只能留在Delphi的人。
     
    年轻的开发人员基本上不进入Delphi,大家都知道Delphi是一个没落的工具,学了也不好找工作,干脆不进来。所以,到目前,Delphi的开发者基本上是老司机。我曾去参加过一次Delphi
     XE的新版本发布会,参会的人基本上都在30岁以上,这还是好几年前。所以,Delphi可以说是后继无人。
    老司机们的年龄最小估计也在35岁左右了,新人不进来,这些人将会在五年十年后淡出编程,大部分人到了这个年龄基本上想混个一官半职,脱离Coding的苦海。所以,Delphi命不长矣。
     
    三、Delphi用户目前的困境
      1、硬件及操作系统的升级让用户无法停留的D7上
    大多数继续使用Delphi的人基本上仍在使用Delphi6或Delphi7的版本,后者人数较多。Delphi几经转手,继D7之后也出了一些版本,什么Delphi2005.net、2009、2010到现在有XE,XE都到十了。让老司机们无法继续留在D7的原因主要是操作系统及计算机硬件的升级,Delphi7之前的版本在XP
     32位系统下运行很好,但到后面的Win7及64位系统就不灵了,加以对多核CPU的支持也没有。XP已经不被微软支持等。这样又迫使部分人离开Delphi,剩下的老司机考虑往XE上寻求升迁老的系统。
       2、XE对Windows开发支持不好
    从Delphi XE最新的版本取向来看,Embarcadero似乎更专注于移动开发,最新的版本还想走向Linux,而放弃对Windows的支持。D6和D7只专注于Windows上的开发,现在XE要同时支持Windows、Android、IOS和Linux,可谓战线拉得太长。对Windows的开发支持感觉越来越差。要知道现在主要用户是老司机,老司机走老路,EXE+DLL,他们要把老系统迁到新工具下,才能去继续按老方法使用Delphi的新功能,开发Android、IOS和Linux,但XE好象一到DLL就不行,这就不能解决老司机们的后顾之忧,老司机们的后顾之忧就是要把他们的那些旧坛坛罐罐搬到新的XE上面来,没有解决这个之前,他们不会心思去用XE的新功能。
    另外,Delphi写Android、IOS和Linux不就是为老司机们准备的吗,新司机谁他娘的还用Delphi这破东西呢,何况Android、IOS和Linux下本身就有很多开发工具都是开源免费的,又正宗又原生态、又成熟又用者众,Delphi真是一点优势都没有,除了让那些只会Delphi又不愿离开Delphi的老司机用,还有谁用呢。
     再说,用Delphi开发Android和IOS永远会落在别人屁股后面。因为Android是Google的,IOS是苹果的,这两家都有自己的开发工具,当Android和IOS升级时,人家自己系统立即支持新看到本,而Delphi还要等到Embarcadero是否开发出支持新版本的XE版本没有。所以,站在追赶新技术的角度出发,专业一点的开发者是不会选择DelphiXE去开发Android和IOS的,尽管Embarcadero吹嘘其控件多、做的界面比较漂亮也不会有什么作用。
    4、开发支持少
    人说“聪明的程序员用Delphi”,Delphi是入门容易修行难。Delphi做一些简单的程序比较容易,但要做更专业的程序,会很麻烦,学习曲线是前面平坦后面陡峭。做程序做到一定程度后,必然希望程序做得更加美观、功能强大,这时你就会感到Delphi不是助手而是障碍了。从这点上说,年轻人不选择Delphi是对的。
    另外是资料很少,D6、D7的资料还多一些,后面版本的资料就少多了。对老司机来说,用老Delphi基本不用再查资料,用新Delphi才需要查资料,但资料少之又少。连英文资料也少。原因总结下来有几点:
    (1)          用户少了,在网上发文章的人就少了,网上很难搜到有用的资料。这个问题也与Delphi售价高,没有免费社区版有关,反正恶性循环。
    (2)          Embarcadero本身给出的资料就少,加之保守,就那些一点资料还不肯完全开放。
    (3)          帮助文件太差。与MSDN比起来真是天上地下,说得不清不楚。如:
    Description
    Embarcadero Technologies does notcurrently have any additional information. Please help us document this topicby using the Discussion page!
    上面英文的基本意思就是“Embarcadero无可奉告,你帮我写吧”。中文资料少不用说,就算您做好准备去啃英文资料,结果你发现英文资料也少,Embarcadero自已的一些网站上有点,还非得买了其产品才对你开放。这就导致想进Delphi的人也进不来,想留Dephi的人也留不下了。
         5、敲诈式营销让Delphi使用者反感
    用户也不是就想用盗版,大部分人也想用正版,但有前提条件,即:
    (1)    产品不会有Bug,这一点XE可能做得不好。
    (2)    支持要好,要不然买入也无法使用,这一点也不行;
    (3)    价格要合理,服务态度要好,也不行。
    据说有人打电话到Delphi(Embarcadero)的代理商询价,代理商基本上支支吾吾,不报价,然后第二天就有Delphi公司的人打电话过来,说你用了Delphi的盗版,让人非常气愤、哭笑不得,感觉非常不好,Delphi的价格依然很高,比微软的开发套件贵得多。所以,我估计,Embarcadero公司也很难卖到钱,他们想打盗版,但盗版依然。
    关于Embarcadero敲诈式营销到网上搜一下,帖子不少。
    四、Delphi的前景
    我同情Delphi,更同情那些对Delphi抱有幻想的开发者。他们那么坚守Delphi,一定愿意买Delphi的正版,支持Delphi一下,无奈那帮卖Delphi的人这么折腾,实在是一种折磨。Embarcadero在它产品版权上看得很紧,但依然控制不住盗版。不仅在产品上看得很紧,Delphi的一些技术文档也看得很紧,想到其网站上去查一些技术文档,没有授权基本上也是白费工夫。再看他的帮助文件,写得也非常差,不清不楚,看了也是云里雾里。网上搜索,资料也非常少。
    Delphi已陷入一个死循环中,观察Embarcadero近来来的表现,好象既没有能力也没有思路从中拔出来。这么走下出,估计三五年Delphi就消失了。Delphi要想继续存在,应该从以下几方面入手。
    1、 消除系统的Bug,增强对老用户的支持,稳住老司机们;
    2、 尽快推出免费社区版,大力增加新的用户群体。
    3、 调整价格策略,实现薄利多销。
    4、 增加用户支持,开放技术资料,让更多人容易学习Delphi,增加对用户的吸引力。
    5、 重新进行用户定位,正如前面的分析,有C++、Java、Android、Object-C这些既原生又免费又超前的工具在,Delphi已经不可能成为专业的开发工具了。Delphi只能利用期入门容易的特点,将用户群体定位在业余开发者群体上。实际上,这个群体很大,大量的金融分析师、财务分析人员、工程人员他们使用Excel脚本、统计软件或MATLAB工具包进行编程,而不能有效地组织他们的程序,Delphi完全满足他们功能上的要求,而且还可以帮助他们组织他们的程序。这个群体的人功能要求相对固定,没有追赶技术前沿的要求,Delphi对他们来说正合适。
     

    Delphi的没落有三个原因:
    1,Object pascal并没有像C/C++那样成为业内标准。

    如果你使用C或C++写程序,可以在任何地方进行编译,例如Windows、Linux、手机,甚至是单片机上都可以使用C写程序。

    没有成为标准的后果就是跨平台,以及影响第三方编译器的出现。Delphi曾经有一个Linux版本叫做Klinx但是已经好多年不再更新了。

    所以这么多年来Delphi只有Borland一家公司苦苦支撑。

    2,人才流失,与内部决策失误。
    Delphi之父Anders Hejlsberg离开Borland去了微软,导致Delphi的编译器有三年的时间无人敢动,因为Anders Hejlsberg完全使用汇编实现的编译器,无人能够看懂。

    Anders Hejlsberg去了微软之后推出了.NET框架,主打语言是C#,无论从类库命名还是代码风格都与Delphi很像,C#语法接近C,又不兼容C。接近C的好处是C系的程序员(C/C++/Java/PHP/)很容易上手,不兼容C的好处是没有历史负担,语法语义可以做的很优美。

    此外决策层,频繁出现失误,有很长一段时间Delphi盲目的去跟随.NET,甚至IDE都改用.NET编写,还推出了VCL for .NET,结果却是丢掉了Win32原生开发,而重新编写的IDE又存在大量BUG,白白耗费大量时间与财力,而技术方面,无论是VCL还是编译器、甚至IDE从Delphi7以后就停步不前。

    3,市场转变

    开发市场现在更注重B/S结构的应用,桌面应用正在大幅减少,Delphi显然不是一个理想的WEB开发语言。

    在桌面市场,解释执行的字节码正在成为主流,像Java、C#、Python、Ruby都是解释类语言。解释执行不容易发生内存泄露与内存错误,因为内存不再需要程序员去手动释放,程序编写更简单,语法也更加灵活,虽然效率可能会略低,但当前的趋势就是用CPU的时间去换取更昂贵的程序员时间,因为大部分程序对效率的要求并不高。其中C#的类库命名很接近Delphi,Delphi程序员转入最为C#比较容易。

    使用Delphi编写一些项目,你可能需要几位比较高级的程序员才能胜任,而使用Java或C#只需要更少和更加普通的程序员。项目完成后Java或C#由于解释执行的原因会更加健壮,因为大部分问题都可以在编译期发现和解决。而Delphi编写的应用则需要较长的Debug时间,项目进度变慢。

    当前的大部分项目,健壮性、开发周期、维护难度远远要比最终执行效率重要100倍。所以企业更多的是在招聘Java与C# 程序员,所以培训机构也在培养Java与C#程序员。现在根本无法见到一个像样的Delphi的培训机构,企业在招聘Delphi程序员的时候往往只是为了维护老旧的项目。

    这个时候如果有新手问“我应该学习那种语言?”,“那种语言更容易就业?”。此类问题的答案是显而易见的。这对Delphi来说是一个恶性循环。

    对于VB的没落的原因我没有仔细考虑过,因为我只用了30天的VB就把他扔掉了,他太简陋,语法不严谨“Else if”和“ElseIf”具有不同的语义,很容易写错。

  • 相关阅读:
    HDU1029 Ignatius and the Princess IV
    UVA11039 Building designing【排序】
    UVA11039 Building designing【排序】
    POJ3278 HDU2717 Catch That Cow
    POJ3278 HDU2717 Catch That Cow
    POJ1338 Ugly Numbers(解法二)
    POJ1338 Ugly Numbers(解法二)
    UVA532 Dungeon Master
    UVA532 Dungeon Master
    POJ1915 Knight Moves
  • 原文地址:https://www.cnblogs.com/bolang100/p/9804938.html
Copyright © 2011-2022 走看看