随着所谓WEB2.0时代来临,程序员从来没有时代象今天那样受人注意,很多程序员对于语言的争论也从来没有象今天这样剧烈, JAVA、C++、 PHP、ASP等等,最近又出来一个Ruby,加上Python。无数的FANS在中间进行争论不休,也就是在网路上,如果是在现实 生活中, 大概会象《倚天屠龙记》里描述的那样,会决战光明顶来定一个胜负,或者说定出天下第一大门派。而现在定出谁是天下第一大其实很方便,看一下哪个语言旗下的 弟子人数即可。而现在最流行的统计方式,就是Google了,看看Google的搜索结果,基本就能判断出其在市面上的网站的使用情况,

约有5,760,000,000项符合 php 的查询结果

  约有3,070,000,000项符合asp的查询结果

  约有976,000,000项符合java的查询结果

  约有327,000,000项符合perl的查询结果

  约有238,000,000项符合python的查询结果

  约有225,000,000项符合c++的查询结果

  约有176,000,000项符合ruby的查询结果

  这段时间葛优的光脑袋频繁曝光,总是喋喋不休的告诉俺们一个道理——用的人多的卡就是好卡。而如果套用这个光头明星的话,那就是,我,相信群众,从上面查询的结果大家可以看到,人民群众是很爱戴PHP的。

  但如果你去问互联网的一些资深开发人员,PHP、ASP与Java,他们之间谁更好?一般来说,这个人都会告诉你,ASP就不用想啦,微软出 的垃圾,PHP和Java是不错的选择,Java适合做大项目,PHP适合做一些短平快的东西。如果你还继续问,这个高手还没有失去耐心的情况下,他大体 都会说,你看世界上最大的互动平台eBAY,就是用JAVA写的,中国最大的社区CHINAREN校友录也是JAVA,而很多小的网站,初期都是PHP, 后来各种原因都必须改到JAVA上面去。这种感觉就是像说,如果你想学武功以便出去砍人,或者说在江湖扬名立万,那么行军拳你就不用练啦,这个东西是政府 拿出来强身键体的,五虎断门刀这个东西你用来对付一般的流氓是绰绰有余,但是碰到绝顶高手你就歇了。而Java有点象太极拳,当今武林最大的门派之一 SUN的首推武功,是对负高手的不二选择,于是很多人就认定:PHP是低等武功,练到最好的结果也就是给赌场看看场子,只有练就Java才能做武林盟主。

俺和很多公司的技术经 理聊的时候,经理们说很多人都有这种心理,他是使用Java的,而你如果让他写PHP,,很多人会有一种受到侮辱的感觉,不是觉得经理不重视他,就是在想 自己什么时候得罪了经理,竟然被发配到PHP这种偏远的小地方去了。越是大公司,PHP的项目越难开展起来,这个让很多技术老大们很是郁闷,但也很是奇 怪。所以,下面,咱们一起分析一下形成这种被人民群众认可,却不被很多开发人员看好的语言——PHP。

  PHP 进入中国是98,99年,进入的时候,初期应用的典型是Chinaren校友录,还有很多的互动应用,它以开发方便,容错性好,迅速成为很多网站的选择。到了00,01年,互联网泡沫的时候,很多都是PHP完成对网站的开发,它的流行有以下几个原因:

  兼容C的语法,容易掌握 
   就这一点来说,它保证了开发人员的稳定来源,基本上说,每个学计算机的人员,没有不学习C 语言的,所以都能在一到两周左右快掌握这个新的语言,然后经过简单的指导,就能开始初期的开发工作。单从程序本身的开发而言,写了三年以上的程序员,和开发了半年以上的PHP程序员差别不是太大。

  运行的快速
    在网路上面,速度是很重要的问题,这一点来说及时是对PHP非常不屑的人也不得不承认PHP得运行速度还是比较令人满意的,只不过由于没有很实际的数据,只是很多人感觉,所以这一点来说,没有非常有力的证据证明。

  非常强的容错,很好的鲁棒性能
    很多写PHP的人员应该有这个感觉,举个例子,你申请一个PHP中的变量,做数字也行,做数组也行,做字符串也可以。我有时候都在想,这么随意的风格,他是如何保证效率的,只能说写这个语言编译器的人实在太不可思议了。

  丰富的函数和简单的操作
    能想到的一些操作,如果不是太罕见,你基本都能找到函数库来解决,典型的就是读文件的内容读到一个变量,到现在为止,我知道的好像只有PHP提供一个专门的函数来解决这个问题

以上四个特点,用PHP开发程序非常得普遍,但作为程序来说,这些看起来非常不错的特征也形成PHP的一些问题,造成在很多资深的程序员对其评价很低。

首先第一条,也是让很多资深的程序员对其尴尬不已的,做了3年以上的PHP程序员,当一个初学者问其一些技巧的时候,他们突然发现,PHP这种语言实在是没有好说的,看它的帮助就能解决问题或者看一下教程。 不像Java,一个仅仅写了半年左右的Java开发人员和3 年以上的Java开发人员可以说有本质的区别,后者可以讲很多JAVA的开发架构和分布问题,讲的那个菜鸟满脑浆糊,满脸崇拜。而俺在 PHPCHINA.CN讲课的时候,发现每个人在听PHP语言一些很细节的东西时都是昏昏欲睡,大部分都在开小差。我想这和PHP语言通俗易懂,没有什么 挑战性的概念有很大的关系。

  第二条还是效率的问题。市面上对于WEB语言的效率,PHP快只是感觉,并没有一个非常有力的测试证明它比别的语言快很多,而JAVA和ASP却有一个非常有名的一个测试性能比较。

有人做过试验,对这三种语言分别做循环性能测试及存取Oracle数据库测试。

在循环性能测试,

JSP用了20000*20000的循环  共四秒钟。

而ASP、PHP测试的是2000*2000循环(少一个数量级),分别用了63秒。

PHP测试的是2000*2000循环 84秒

数据库测试中

三者分别对Oracle8进行1000次Insert,Update,Select和Delete:

JSP需要13秒

PHP需要69秒

ASP则需要73秒

一个有意思的测试,说明一个问题,对于大量的运算,PHP看起来不是一个太成功的语言,这个也是很多高手不是很看好PHP的一个实际例证明,然而实际是这 个仅仅是一个有点BT的测试,谁会在互联网上写一个循环400万次循环以上的一次请求应用,我倒很想见识一下。实际上,在WEB应用中这种循环或者说密集 的运算非常罕见,如果有,首先该考虑的也是算法的优化,减少循环的次数,然后才是考虑语言本身。并且就算是必要的,也不是Java、PHP和ASP能够解 决的,这个时候,如果用的比较多,C会粉墨登场,再多一点,可以使用汇编,非常多的情况下,芯片的设计我想是比较好的选择,怎么样都不会轮到Java这种 语言,所以用这种方法来评价PHP是非常不妥的。

  而对于PHP开发中较好的鲁棒性,你怎么写它都能运行,并且很稳定,从而也造成PHP程序员的散漫,程序的开发非常随意,又加上中国互联网产品 开发的紧急性,几乎都没有很好的文档,从而后期PHP程序的维护成为无数项目经理的噩梦。这一点也是很多高手或者说资深程序员对于PHP评价很低的地方, 而当很多项目经理需要要规范开发的时候,却又发现无从规范起,Java有Struts、MVC……而PHP却缺乏成体系的开发架构,从而也成为PHP很难 成为企业应用系统的选择。

  至于丰富的函数操作,这个大概是唯一没有被人诟病的地方,但是 Java、ASP以及Perl都有很丰富的函数,PHP在这一点没有非常大的优势,所以只是成为人们选择它的一个不是很重要的理由。

转:论Web 2.0时代的PHP(注:侧面看java)相关推荐

  1. 硅谷Web 2.0时代即将结束? 实用型公司更受关注

    北京时间9月17日消息,据国外媒体报道,自2005年上线以来,科技博客TechCrunch便与Web 2.0时代的兴起休戚相关.作为见证Facebook.Yelp.YouTube.Twitter等社交 ...

  2. Xswap:Web 3.0时代跨链聚合闪兑赛道的黑马

    我们一直说,区块链是Web 3.0时代最伟大的技术革新. 随着区块链技术的推进和发展,越来越多的公链和生态开始涌现并日益成熟,从Ethereum到TRON.从BSC到HECO.从Solana到Mati ...

  3. 服装ERP应用 四 从手工到Web 2 0时代的VIP客户管理

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 手工方式 ...

  4. 星驰云算GOSTAR,携手Swarm共建Web 3.0时代

    星驰云算GOSTAR,携手Swarm共建Web 3.0时代 随着IPFS.Filecoin,和 Swarm的市场逐渐展开并取得火爆的成果,人们越来越关注分布式存储网络项目市场的发展前景.最近一款&qu ...

  5. 服装ERP应用(四) 从手工到Web 2.0时代的VIP客户管理

    手工方式的VIP客户管理   FL公司是一家知名的高级女装品牌企业,其产品目标消费群体定位为高级白领女性,其秋冬产品的定价都在2000RMB以上,像FL公司这样的女装品牌,其潜在消费者中有很大一部分是 ...

  6. 浅谈未来趋势Web 3.0时代

    相比于遥远的元宇宙,Web 3.0距离我们要近得多.数字加密货币行业的从业者为 Web 3.0 赋予了更高的期待,大家都有种认知,即元宇宙的风口话题之后,真正未来趋势是Web 3.0. 当然,很多人并 ...

  7. Actuate 10把企业报表带进WEB 2.0 时代

    Actuate 10把企业报表带进WEB 2.0 时代 2008-12-25 13:40:41[作者]畅享网 畅享网消息:Actuate (安讯) 公司近日宣布,即将于中国市场推出安讯最新一代产品Ac ...

  8. 论Web 2.0时代的PHP

    随着所谓WEB2.0时代来临,程序员从来没有时代象今天那样受人注意,很多程序员对于语言的争论也从来没有象今天这样剧烈,JAVA.C++.PHP.ASP等等,最近又出来一个Ruby,加上Python.无 ...

  9. 转:Web 2.0时代必读的24本经典书籍

    如何了解用户的需求?如何让你的用户体验良好?你会发现,这些已经脱离互联网本身--互联网用户同时也可能是超市里买水果的人,是电视机前看<贞观 长歌>的人.事实上,广告从几十年前就开始专门研究 ...

最新文章

  1. C++编程优化——让你的代码飞起来
  2. android 中使用ExpandableListView控件结合服务器json文件的下载
  3. 《大话数据结构》读书笔记-串
  4. Write operations are not allowed in read-only mode 只读模式下(FlushMode.NEVER/MANUAL)写操作不允
  5. 用贪婪算法解决背包问题_解决主要算法问题的贪婪策略
  6. uniapp中封装ajax方法
  7. 谷歌搜索将于 2019 年年底停止索引任何 Flash 内容
  8. 如法炮制的意思,成语如法炮制的炮什么意思?
  9. 转:神经网络编程入门
  10. 《为何爱会伤人》-读书笔记
  11. Sklearn的聚类算法以及聚类评价指标
  12. 关于坑爹的编解码问题
  13. 微商卖养生产品怎么吸粉?让客户慢慢进入你的营销场景
  14. ubuntu无法清空回收站解决办法
  15. 使用bedtools进行gwas基因注释
  16. rand()函数产生随机数
  17. bzoj1937: [Shoi2004]Mst 最小生成树
  18. 【Python数据清洗】pivot_table 与 pivot 的区别——手把手系列
  19. matlab主成分分析散点图_基于matlab的主成分分析与因子分析
  20. leetcode(快乐数字)两种解法

热门文章

  1. 曲线的曲率与挠率及Frenet frame
  2. python中islower()、isupper()、istitle()函数的用法详解
  3. Win10总是开机黑屏?显卡驱动安装失败-驱动人生解决方案
  4. 三元乙丙橡胶复合行业调研报告 - 市场现状分析与发展前景预测
  5. html认识时间游戏,教孩子认识时间有那么难吗?进来,50个游戏让孩子轻松学会认时间...
  6. 云BI,如何成为了企业的“贴身管家”?
  7. 如何修改CodeBlocks创建项目默认的main.cpp
  8. 【pytest官方文档】解读- 开发可pip安装的第三方插件
  9. uniapp 开发APP 安卓手机中 在使用nvue时候 border的dashed和radius可能会有冲突的解决办法
  10. 电脑html黑色实心圆点,html5使用canvas画空心圆与实心圆