`
七月十五
  • 浏览: 23542 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

有感于“论PHP的倒掉”

阅读更多
----------------------------------------
前言
    已被隐藏的《论PHP的倒掉》参见http://www.iteye.com/topic/520153
    面对攻击和隐藏扣分,我并不感到愤怒和伤怀,那样太消极了。被隐藏后引发了我的思考,为什么会被隐藏和遭受攻击?到底我所思考的是不是走入了误区?我如何正确的认识php和编程?我能从中得到些什么启示呢?
    另外我声明一下,我就是phpchina的七月十五,但是并不代表phpchina的立场,所说的话只是私人言论,在javaeye我只希望我是javaeye的会员而已。)
----------------------------------------

    php作为目前排名的第三大语言,这么多年来多少有点研究,php的发展并没有扬长避短,发挥优势,实在看不出php的长处在最近几年的发展。一样东西如果没有长处,一定会有替代品,淘汰是迟早的事情。撇开php在后端领域目前根本就竞争不过java和.net不说,javascript潜力的发掘和崛起,以及Flex,JavaFX,GWT等的进步,无一不威胁着php的优势地位。不要认为php是服务端脚本就没有被取代的可能性。

    未来的编程发展方向是服务(Service)式和分布(Distributed)式的。这必然会导致信息传输的编码标准化,与服务器交互是不限制语言的,只要这个语言有解析编码的能力,就能处理信息。面向服务编程不限语言,这一点可以从淘宝的TOP上直观的看到,TOP几乎支持任何主流语言。面向服务编程也不限客户端,不管你是应用小程序(applet),浏览器(browser),桌面应用程序(desktop),还是移动终端(moblie)都可使用服务。

    也许是我过于偏激了,因为目前大量的phper编程都使用一直以来非常传统的php数据编码编程,思想固化;要么就走向了所谓的企业化的oop及使用大型框架的方向,偏离php的优势。而php的发展方向在哪里,我估计目前zend也比较疑惑。很多人认为php应该加强底层的优化,提高性能和效率,继续以前的简单实用。然后zend貌似要把php拉向企业计算的大池塘里,php这条小鱼要跟java,.net等等大鱼去争一席之地,大鱼吃小鱼是规律。更可怕的是在企业计算重视性能和安全,php这条慢鱼也逃不过快鱼吃慢鱼的的悲剧。

    zend如果不重新审视php的发展方向,以及目标市场,以及发展计划的话。不出三五年后端java,.net等以及前端的javascript,html5,Flex,GWT,JavaFX等会重新占领市场份额。php会在萎缩中倒掉。

    这篇文章因为立场原因不适合发在phpchina,这样的论调要么引发不满,要么消极导向。另一个原因是因为javaeye层次更高些。所以我发在了javaeye的php版块。发布后我就去上海参加了为期三天的行动成功公司的4*8绩效管理研修班了,没有及时关注。原以为会引发讨论,没想到换来的一堆的谩骂和攻击,最后被隐藏扣分。这是我意想不到的。

    之前我就说过,任何语言层面的讨论都没有意义,人菜那才是真的菜。PHPer的现状是不思考,不实践,全作愤怒状,听不进任何意见和建议。心态决定思维,思维准定行为,行为决定结果。盲目自大、鼠目寸光、杯空自满的心态,我想这才是php倒掉的真正原因。

    其实倒掉更多的是人,我不希望见到这个倒掉,那个倒掉。朝阳喷薄,以至如日中天,亦有日薄西山时。时乎,时乎,会当有变时。
分享到:
评论
32 楼 七月十五 2009-11-23  
先问候一下廖兄、廖夫人及廖Baby好。长久不见了。廖兄这几个月一定要当好和尚,不要采花啊。忍住。呵呵。

dualface 写道
PHP 是一种完全为 Web App 设计的语言,所以用 PHP 做 Web 那是如鱼得水。

1、WebApp用PHP如鱼得水我持保留意见。个人认为Flex/AactionScript用来做WebGame、WebApp是如鱼得海。

dualface 写道
就好像卫生纸和卫生巾都可以吸水,但是没几个女生会用卫生纸来代替卫生巾。

2、关键是PHP是卫生巾么?抑或是厕纸?沙皮纸?

dualface 写道
说的现实一点,雇一个 Java 熟练工的钱可以雇两个 PHP 熟练工,生产力还更高。所以越来越多的 Web App 都把这一层交给 PHP 来处理。

3、我预言,这只是昙花一现。如果单纯从短期成本上考虑,按经济学和管理学上来说,这样做后果是很短见的。后期风险很大。
31 楼 dualface 2009-11-23  
Party 倒了,PHP 都还不一定会倒 -_-

PHP 的成功并不仅仅是“简单”,最重要的原因还是 —— PHP 是一种完全为 Web App 设计的语言,所以用 PHP 做 Web 那是如鱼得水。

虽然 Java/.NET/Python/Ruby/XXX 也可以做 Web App,但是比起一种专门为 Web App 设计的语言,易用程度和开发效率上有很大区别,所以 PHP 积累了庞大的群众基础。

当然了,Web App 的规模越来越大,仅靠单一语言是不可能解决问题的。但是人类解决问题的模式就是把大问题分解为小问题,再把小问题分解为更小的问题。如果仅仅着眼于服务端和客户端的交互这一层,PHP 就是极佳的选择。就好像卫生纸和卫生巾都可以吸水,但是没几个女生会用卫生纸来代替卫生巾。

说的现实一点,雇一个 Java 熟练工的钱可以雇两个 PHP 熟练工,生产力还更高。所以越来越多的 Web App 都把这一层交给 PHP 来处理。

30 楼 七月十五 2009-11-23  
magician 写道
拿php和js比应该是因为v8的出现,即服务端js编程

1、重不重视浏览器编程,跟有没有v8没有太大的关系。
magician 写道

如果我们把当今的web应用划分的清楚一些,每一个层面的角色我觉得比较合理的应该是:
展现 - html & client js & css / flash
展现逻辑 - php / flex / ror / server js
业务逻辑 - java / c / python
数据 - all kinds of db

2、展现逻辑放在哪里这是关键。展现逻辑需要放在server么?放在browser行不行?请问C/S下,展现逻辑放在哪里,Server or Client?
3、HTML是一种标记语言,不具备编程能力。展现逻辑和展现能分开么?有必要分开么?分开有什么好处?假如我不显示在PC而用手机以WML标记又如何处理?
magician 写道
只要一个门语言在持续更新,那么它离倒掉就还有十万八千里。(与之类推的还有框架、工具等等)

4、方向很重要。发展要看往哪里发展。方向错了,跑得越快,偏得越远。
29 楼 七月十五 2009-11-23  
cuimuxi 写道
送楼主一句中肯的话吧:无知者无畏!

麻烦楼主多看点书,多学习一点其他的语言,多了解一下web架构
拜托楼主了


这个我一直在努力,因为一直都是自学的。
不是科班出身,身边没有程序设计界的朋友、同学。
一直都是自己看书得来的浅见,难免闭门造车之嫌。
所以有些概念性的东西,还希望您能多多指教,不吝赐教。

我很想知道,所谓“web架构”是怎样的?
28 楼 七月十五 2009-11-23  
syu 写道

每样语言工具都有高手和菜鸟。
楼主确实杞人忧天了。
既然把争论从PHP语言自身转移到PHPer上来。
我想问的是,这么多学C而不精的Cer是否让C绝灭了?
不能因为楼主自身水平提高后就反过来怪责水平低的Phper会拖死PHP的明天。

没有比恨铁不成钢和扶不起的阿斗更令人心酸的事情了。
27 楼 syu 2009-11-23  
七月十五 写道
这个问题讨论下去就要讨论到PHP的内核及PHP未来的发展上去了,看来我需要保持沉默了,否则又要隐藏帖了。



都开了贴子讨论,又何必以沉默待之呢?

这儿的人一没爆粗口,二没群起愤之。大家仁者见仁,难道不是楼主开贴初衷?


语言嘛,工具也,又非宗教。

站在人的角度,适者即用。但也不至于对工具本身死活轻下结论。毕竟还有这么多场合在应用着。

站在业务的角度,只有不适合的工具,没有不好的语言。

企业应用是个天大的骗言和幌子,谁能给个定义,什么才算是企业应用?

多少年来对PHP的打击无一例外不是祭出“PHP不适合企业应用”的大旗。

那么facebook,yahoo,百度,sina是不是企业?他们有没有用PHP?

有人也许会轻藐的说,他们只用PHP做简单的事,复杂的仍然是X,Y,Z在做。

但反过来说,为什么它们不用X,Y,Z来做这样简单的事?因为不适合嘛。

我所理解的企业应用是一个集合,通常需要多种工具来进行整合,每一环都有它存在的意义和价值。

PHP在WEB层面活跃不是没有原因的,也不是因为它语法随意,简单。而且以PHP出身(而非终结)的高手业界也不少吧。

哪里来的死亡?


汇编都还活着,PHP就还年轻得很。
26 楼 cuimuxi 2009-11-23  
送楼主一句中肯的话吧:无知者无畏!

麻烦楼主多看点书,多学习一点其他的语言,多了解一下web架构
拜托楼主了
25 楼 magician 2009-11-23  
拿php和js比应该是因为v8的出现,即服务端js编程

但是这个也不能成为php死掉的原因

php作为目前最简单,性能也在上层的前端语言来讲,绝对有它赖以生存的绝招

如果我们把当今的web应用划分的清楚一些,每一个层面的角色我觉得比较合理的应该是:

展现 - html & client js & css / flash
展现逻辑 - php / flex / ror / server js
业务逻辑 - java / c / python
数据 - all kinds of db

你可以看到实际上php做的事情很简单,就是展示,但是是含有逻辑的,它可以通过memcache去拿由java或者c运算好的结果,也可以直接访问数据库,这就是它最大的优势!也是它性能最高的一面。其他语言相比它在这个环节都有较大的劣势。

但是一定要把什么web service啊,文本处理啊,都搬来,然后拿php去和其他语言比较,这本身就是不合理的,不正确的,目前没有银弹,没有任何一种语言能够独当一面。企业应用有企业应用的武器,但是另外90%的非企业应用,php是有更好的发挥的。所以说什么php倒掉了或者要倒掉都是无稽之谈

我一直在强调一点:

以后的时代,是混合编程的时代,了解各种语言的长处和短处,在各种场合扬长避短才是关键。一味的做预言家来评判哪种语言或者哪种语言死掉是一种很愚蠢的行为。

只要一个门语言在持续更新,那么它离倒掉就还有十万八千里。(与之类推的还有框架、工具等等)
24 楼 fnet 2009-11-23  
七月十五 写道
fnet 写道
七月十五 写道
hongkong 写道
我很想知道lz怎么拿php和js作比较?

很多人用php就是为了实现页面效果(这是javascript擅长的)。比如分页、树状、数据交互、表单验证等。
虽然PHP是服务端脚本,但有几个是真正理解后端的,真正把PHP拿来做服务端的?
看上去我把服务端的PHP跟前端的javascript来比看起来很不合理。
但我试问各位,你用PHP是不是也是达到某些页面效果?



PHP实现页面效果???

你写分页的时候用PHP拼HTML的吗?


这么具体的问题?
为何要用php来计算分页?用javascript就可以了。我的答案是:
1、呈现页码:传出总页数和当前页给javascript由javascript分页。
2、取得数据:请求分页时由javascript计算出offset和rov,传给服务端进行数据取出计算。


javascript总要和服务器端交互吧,这时PHP不久派上用场了吗?
23 楼 七月十五 2009-11-23  
这个问题讨论下去就要讨论到PHP的内核及PHP未来的发展上去了,看来我需要保持沉默了,否则又要隐藏帖了。
22 楼 fnet 2009-11-23  
七月十五 写道
fnet 写道
LZ杞人忧天了。
殊不知Flex+PHP也可以是一种解决方案。Ext+PHP也可以是一种解决方案。浏览器编程能力提高能给服务器带来什么变革???


那么我想问一下,Java + Flex 和 .NET + Ext 呢?


那只是另外两种解决方案,并且如果客户需求不复杂,没那个必要得话,我会推荐用PHP+Ext或PHP+Flex,而不会用java/.net的方案,除非我有现成的。

LZ抨击的不只是 PHP,看样子抨击的是几乎所有服务器端脚本语言了。

把问题转移到人上面来,我想LZ针对的是拿PHP做小网站的人难以提高PHP技术。
这个LZ不用担心,PHPer上了层次之后都是C高手,薪水拿的比javaer还多。
21 楼 coolcoolhot 2009-11-23  
php是不会倒的,我相信它,它的简单,不规范.....,就是因为它用起来自由!(另外,貌似phpchina到处都是广告,那网站让人上了恶心)
20 楼 syu 2009-11-23  
每样语言工具都有高手和菜鸟。

楼主确实杞人忧天了。

既然把争论从PHP语言自身转移到PHPer上来。

我想问的是,这么多学C而不精的Cer是否让C绝灭了?

不能因为楼主自身水平提高后就反过来怪责水平低的Phper会拖死PHP的明天。



19 楼 Zilli 2009-11-23  
七月十五 写道
robbin 写道
不是PHP有没有前途的问题,PHP是肯定有前途的,但是PHPer会有前途吗?
一针见血。语言都没问题,有问题的是人。

你都肯定了有问题的是人,为什么还勇于提出《论PHP的倒掉》这个论调啊?

看了LZ就taobao的TOP应用发表过几次讨论了。是不是想以后所有的应用都采用这个模式啊?

分布式运算确实高端,但是高端的技术,有哪些公司用的到呢? 用的到的公司又有几个业务需要?其他的东西用什么来做?

18 楼 七月十五 2009-11-23  
robbin 写道
不是PHP有没有前途的问题,PHP是肯定有前途的,但是PHPer会有前途吗?
一针见血。语言都没问题,有问题的是人。
17 楼 biAji 2009-11-23  
Java能保住自己的市场份额就不错了。。占据PHP的份额我看困难。。JavaFx那就是异常的暗淡。基本上目前看来没有什么前景。

16 楼 七月十五 2009-11-23  
fnet 写道
七月十五 写道
hongkong 写道
我很想知道lz怎么拿php和js作比较?

很多人用php就是为了实现页面效果(这是javascript擅长的)。比如分页、树状、数据交互、表单验证等。
虽然PHP是服务端脚本,但有几个是真正理解后端的,真正把PHP拿来做服务端的?
看上去我把服务端的PHP跟前端的javascript来比看起来很不合理。
但我试问各位,你用PHP是不是也是达到某些页面效果?



PHP实现页面效果???

你写分页的时候用PHP拼HTML的吗?


这么具体的问题?
为何要用php来计算分页?用javascript就可以了。我的答案是:
1、呈现页码:传出总页数和当前页给javascript由javascript分页。
2、取得数据:请求分页时由javascript计算出offset和rov,传给服务端进行数据取出计算。
15 楼 七猫 2009-11-23  
简而言之,php是有前途的,但phper最好多学些其他东东以提升自己的价值,擅长php但不限于php
14 楼 七月十五 2009-11-23  
fnet 写道
LZ杞人忧天了。
殊不知Flex+PHP也可以是一种解决方案。Ext+PHP也可以是一种解决方案。浏览器编程能力提高能给服务器带来什么变革???


那么我想问一下,Java + Flex 和 .NET + Ext 呢?
13 楼 robbin 2009-11-23  
作为一个曾经的老PHPer,我个人的看法是PHP的不会倒掉。我在99年2000年的时候做互联网开发,用PHP作为web,用Java做后端高性能服务,也算10年的老PHPer了。10年的编程生涯回顾过来,对技术的认识也是一个否定之否定,螺旋式上升的过程。

PHP是一个优点和缺点都过于突出的web语言,因为他的优点就是过于简单易用,所以他非常有生命力,也因为他太简单,所以应用领域受到很大的限制。但你不能忽视一个编程语言简单易用带来的威力,前两年我曾经认为PHP要被更加高级的Python/Ruby取代,但事实证明,PHP还是互联网第一的编程语言,Python/Ruby还是比PHP复杂很多,带来了不少门槛。

JavaEye曾经有一个PHP的讨论贴:PHP框架的繁荣是正确的发展方向吗?,在这个讨论当中,我对PHP的看法就是,PHP不应该搞重型框架例如Zend这种东西:

robbin 写道
其实PHP核心问题都不是性能,而是能不能保持“简单性”和“草根性”

一个有点编程背景的普通人,只需要学习PHP半天时间,就可以上手开始开发web应用了,这就是PHP最大的优势。专业程序群体才多大,而电脑爱好者的群体有多大?我一个朋友,做photoshop出身的,人家学了两天PHP,到处接活给人家开发网站,一个人全部搞定。你让他学Java,那真要了他的命了。我另外一个朋友的老公,人家压根就不是这一行的,照样会用PHP搭网站,人家上网去下载一个PHP程序,改吧改吧页面,就弄好了,你让人家学ruby?那肯定不可能。

PHP的人海战术也就是这么来的,群众基础好。事实上PHP5曾经在相当长时间内被抵制,就是因为PHP5的面向对象语法引入了对于电脑爱好者来说门槛开始变高了,PHP开始变复杂了。

因此PHP再用什么框架,是违背PHP本身的设计哲学的。PHP就应该做简单的页面处理就够了,复杂的逻辑让后台的Java/C++去处理。


事实上这些年PHP的应用领域也不仅仅在前端,相当多后端编程甚至后端服务也直接使用PHP,比方说Facebook这个现在全球流量第2大的网站就是绝大部分功能都是PHP,附带少量的C++,Java和Erlang,再比如现在热门的网页游戏,基本上也都是直接用PHP做后端来用。可以这样说,最近3年来,PHP不但没有萎缩,反而在扩大市场份额,PHP作为互联网Web编程语言的王者,短期之内还没有出现有威胁的挑战者。

回到楼主这个话题上来,其实楼主思考的问题应该是:不是PHP有没有前途的问题,PHP是肯定有前途的,但是PHPer会有前途吗?

这个话题就有些沉重了,PHPer总给人不登大雅之堂的感觉,PHPer的薪资也远远不及同等工作年限的Java/C++这也是一个残酷的现实。一个程序员工作3年之后,随着视野和经验的增长,不可避免要考虑web架构,高性能高可用性问题,而这些领域,都不是一个纯PHPer可以涉及的领域,所以PHPer很容易就触到职业上的天花板,要打破这个天花板,你就不得不去接触C++或者Java这些编程语言。但对一个PHPer来说,当你不得不去学习Java或者C++的时候,心理难免有些感概,我何不从一开始就搞C++呢,这样职业发展道路岂不是更好?所以就会产生PHP没有前途的悲观想法。

其实我个人觉得从程序员的职业生涯来看,不应该把自己和编程语言绑得过死,开放心态,多学习多接触多实践,各种编程语言仅仅是你工具箱里面的各种工具才好。

相关推荐

Global site tag (gtag.js) - Google Analytics