Delphi 语言「建议收藏」

Delphi 语言「建议收藏」自1995年Borland公司发布Delphi1.0以来,Delphi受到很多开发者的亲睐,到1999年发布Delphi5,Delphi以其开发快捷、控件丰富、易于上手等优势吸引了众多的开发者,用户

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

自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”具有不同的语义,很容易写错。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167421.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 在Ubuntu/Linux环境下使用MySQL:开放/修改3306端口、开放访问权限「建议收藏」

    在Ubuntu/Linux环境下使用MySQL:开放/修改3306端口、开放访问权限「建议收藏」一、查看3306端口是否开放netstat-an|grep3306如果看到下图这样的,说明端口并未打开:二、修改访问权限进入目录“etc/mysql/mysql.conf.d/”,如下图所示:在这个目录下,有一个配置文件“mysqld.cnf”,如下图所示:打开这个配置文件:sudovimmysqld.cnf文件打开后有一大段注释说明,不…

    2022年8月30日
    0
  • C++ MFC实现list控件对Excel的读取

    C++ MFC实现list控件对Excel的读取前面已经讲过了C++MFC程序对Excel文件的写入,链接如下:https://blog.csdn.net/V_Gogol/article/details/81782644后面很长时间没有更新读取数据操作,非常抱歉!看到网上有朋友问了读取的方法,于是就再写一了这一篇关于读取操作的博文。读取和写入大体相似,要引入的头文件和相关配置也是一样的,具体可以先看上面那一篇关于写入的博文,此篇为…

    2022年6月22日
    26
  • 如何在mac上安装虚拟机搭载Windows「建议收藏」

    如何在mac上安装虚拟机搭载Windows「建议收藏」一、下载虚拟机官方下载网址https://www.vmware.com/二、下载想要安装的Windows版本推荐下载网址https://msdn.itellyou.cn/(msdn建议收藏,相当全的系统)直接将地址复制到迅雷下载即可三、双击下载完成的vm虚拟机,拖到app中如果VM提示找不到可以连接的有效对等进程:…

    2022年9月13日
    0
  • hive类型转换_sqlserver数据类型转换

    hive类型转换_sqlserver数据类型转换hive数据类型转换规则及转换原则,日期类型转换

    2022年9月21日
    0
  • QTcpSocket 内存问题「建议收藏」

    QTcpSocket 内存问题「建议收藏」我自己测试也发现反复的connectToHost会有内存泄露,建议谨慎的使用!////////////////////////////////////////////////QTcpSocket类的方法connectToHost会泄露内存,即使把调用这个方法的QTcpSocket实例delete掉,内存也不会释放!反复connectToHost会导致段错误,十分危险。必须控制connectToH…

    2022年9月8日
    0
  • ubuntu 源仓库说明

    ubuntu 源仓库说明ubuntu网易源:debhttp://mirrors.163.com/ubuntu/xenialmainrestricteduniversemultiversedebhttp://mirrors.163.com/ubuntu/xenial-securitymainrestricteduniversemultiversedebhttp://mirrors.163.co

    2022年6月21日
    105

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号