为什么asp.net没能比php更流行?
程序员文章站
2022-06-10 09:51:19
...
回复内容:
其实http://ASP.NET比PHP更流行才是个奇怪的事情吧。PHP是专门面向Web开发设计的一个简单强大的脚本语言,一个专门为Web开发设计的语言,也是现存的Web后端开发语言中,支持最广泛、流行时间最长的。PHP诞生的时候,根本就没有http://ASP.NET,其主要竞争对手还是ASP和CGI这种东西。流行开来简直是再正常不过的事情,流行开后,http://ASP.NET/sevlet/JSP这些竞争技术又是建立在重型工业化OOP语言之上的,在快速开发网站上并不比PHP更有优势。而Ruby之流已经是在PHP流行纵横互联网数十年之后才崭露头角,在资源支持和流行程度上自然难以撼动PHP的地位。
价格、平台、开源、生态神马的基本上都是扯。 不请自来
对于互联网来说,PHP确实有非常巨大的优势,无论是重新写一个新站,亦或是直接拿现成产品二次开发,PHP都具有十分高的开发效率,这一点确实是http://ASP.NET亦或是JAVA所无法比拟的。可以说,PHP就是因为互联网而诞生的语言,但术业有专攻,PHP的强项是做网站,弱项则是做系统,与之对应的,http://ASP.NET/Java的强项则是做相关的业务系统,因此很多公司的内部系统是采用它们来开发,这就并非题主可以看得见的,因此也产生了一定的错觉了。
其次,针对其他答主说http://ASP.NET服务器贵、SQLServer又贵性能又不好、不开源之类的,我要补充下,er...答主用windows 3.1?
php目前问题很多,函数命名混乱,namespace坑爹,特性兼容差劲,现在多少代码还在5.2上跑着,zend又喜欢藏藏掖掖,导致社区一片萎靡——不过这都完全否定不了php本身的光芒。
语言特性就不细说了,曾经php3时代register globals让表单提交多少便捷,文件上传何其方便,那时候asp还在吃屎,http://asp.net更没影子,哪里来的影响力?曾经web==php.
IT技术更新换代非常快速,大浪淘沙,一个语言如果能火过五六年,必然有其可取之处。php也好,linux也好,github也好,它的流行完全是open source之freedom*价值的体现。同样,价格free也是个附带因素。我就是要吐槽http://ASP.NET服务器贵、SQLServer又贵性能又不好、不开源,顺带吐槽IOE的傻大黑粗。开源个CLR算狗屁玩意?Mono算狗屁玩具?开源个http://asp.net mvc还成了大事件?同样一个机器,你配http://asp.net和php分别试试,能抗多少并发?除了ms有几个规模站用http://asp.net?
作为一个称职的胶水语言,选择php意味着选择一个生态,lamp不是白叫的,当然现在有性能更好的nginx。网站不是拼凑一套代码两三套模板就完事,更多还要考量并发,荷载,IO,队列,缓存,分布式存储..etc。lnmp的魅力在于任何环节不满意你可以自行写扩展,做定制,造*,这都是ms系所不具备的
一句话:php比java轻量,比ruby快,比python效率高,比nodejs调试方便
http://asp.net,真没怎么看在眼里。iis下也可以跑php,不是么? php流行的刚开始,有http://asp.net什么事? 开发普通网站,首选PHP。一般的中小型网站,用PHP又快又好。
开发企业网络应用,首选http://asp.net。在具备业务流程的数据库应用中,http://Asp.net更具优势。
开发大型网站和应用,首选Java。需要高端服务器、集群和拓展服务器的大型应用,Java方案更成熟。
整体而言,.net比PHP更流行。PHP开发的网站,大众可以常常接触到。而.net开发的ERP只在行业内应用。这就如同前台或者门卫比行政更容易混个脸熟一样,但行政的薪酬和权利更大。
编码效率 http://asp.net > PHP > Java;
部署效率 PHP>> http://asp.net >= Java;
运行效率 Java = http://asp.net > PHP;
大型方案 Java >> PHP >= http://asp.net。
虽然从数量上比较,全球采用PHP的网站最多。但Java开发者远远超过 http://asp.net与 PHP之和,Java多用于大型服务器产品,会有数百人参与的项目。在特定的企业应用领域,则是 http://asp.net更流行。
一个有较复杂业务规则的网站,相同功能不同语言开发的参考报价:
jsp 75万
http://asp.net 35万
php 50万
可以看到,在业务处理方面,http://asp.net具有较大成本优势。
因此,不同的语言各具特色。而http://asp.net和PHP流行度都较高,份额比较平稳。在各类编程语言统计中.net份额都远高于PHP,扣除.net中桌面部分,两者可能不分伯仲或者http://asp.net用户更多。并且从权重上看,Java才真正处于垄断地位。 .net跑起来带的东西多,面相的目标是企业级项目,php是脚本语言,对于前台展示而言,没这么多负担。 居然没人答“因为php是最好的编程语言”? http://asp.net做过的项目不多,最近几年都是用php做项目,但是从为数不到的http://asp.net项目经验中得到的感觉就是 http://asp.net的整体效率相对于php太低了。
首先 搭建开发环境 配置一般的机器 vs要安装至少半小时 sqlserver差不多也要十几分钟 而php呢 直接安装个wamp继承环境 顶多五分钟搞定一切。
第二 开发 c#等语言都是强类型的,php是弱类型的,代码量就少了很多,由类型不一致和类型转换带来的各种问题自然也就没有了
第三 php开源项目多如牛毛,针对需求稍加改动就可以交活。 而 c#好的开源项目很少 而且很多都是编译好了 只有dll ,没有多少二才开发的余地了
第四 部署 php可以跨平台win和linux随便玩 而 http://asp.net就只有 win可选了。而且成本也是高很多啊
最后 我的感觉就是 php是为web而生的语言 而http://asp.net只是微软为了证明存在感而创造出来的东西。两者其实没有多少可比性的。 谢邀
1、价格
用http://asp.net的话,服务器软件windows server 很贵(随手查了一下2008版18000元)、数据库软件很贵(2008版12500元),性能却未必好。
用php的话,服务器软件可以是0 (linux),数据库软件可以是0 (mysql等),性能也不差。
2、生态
因为前面的原因,用php的人多一点,开发讨论的多一点,做成的大大小小的网站多一点,慢慢地就成了规模。
3、开源
因为php代码可以开源不用编译,linux和mysql都开源,所以更有利于开发发展。
然后循环过程中,互相促进,所以到现在就是这个样子了。 我觉得吧……
流行的东西并不是最好的东西,而是善于把各方的利益融入进来。
PHP门槛低,能让更多非科班出身的菜鸟接触到程序设计,从而爱上开发这一行当。然后这个社群就会更大。
流行的东西一定要保证核心竞争。
FACEBOOK为什么要用PHP开发,因为只有只有一个人开发,快啊。互联网的快很大程度上成就了PHP。
打个比喻:
比如一个女的像另外一个女的比学历高,收入高……那个女的只需要说「我胸大」!
世界就安静了!
推荐阅读