为什么asp.net没能比php更流行?
回复内容:
其实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。
打个比喻:
比如一个女的像另外一个女的比学历高,收入高……那个女的只需要说「我胸大」!
世界就安静了!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

在PHPStorm中如何進行CLI模式的調試?在使用PHPStorm進行開發時,有時我們需要在命令行界面(CLI)模式下調試PHP�...

如何在系統重啟後自動設置unixsocket的權限每次系統重啟後,我們都需要執行以下命令來修改unixsocket的權限:sudo...

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。
