问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

为什么那么多公司不用 .NET,而选择PHP、JSP,是 .NET有什么缺点吗?

发布网友 发布时间:2022-12-17 08:48

我来回答

1个回答

热心网友 时间:2023-09-15 04:24

做了7年的c#开发,4年多的java,c/c++,说说我的看法,主要有的区别:

一是开源和闭源的区别,.net早期完全闭源,开发也是完全傻瓜式的,微软的思想就是让开发更容易,所以无法看到底层实现,给人的感觉就是走一条胡同,很快到达目的地却无法知道墙内的东西,接触过java和c之后,感觉就像掉进了大海,原来海底也这么漂亮,有太多开源的软件和框架,你可以看到更深层的东西,比如我们看bbo,看进去后看netty,netty看进去后看到Linux,select,epoll,看到epoll,看Linux相关的,感觉就是掉进了大海,太多东西需要学习,做这么多年开发依然在不断的学习,但也给了我更多兴趣和探知未知世界的乐趣,以前做.net的时候有种感觉就是,别让我做非.net的东西,我不会,对陌生的的东西很害怕,现在的感觉就是你让我写个控制原子弹的程序我也敢去写(比方)。

二是免费和收费的区别,所有的公司产品的成本是公司发展的最关键因素之一,.net全家桶成本太高,vs的版权+windows版权+sql server版权再加上其它支持类软件版权,成本非常高,相反linux完全免费开源,给你选你会选哪一个?同时linux或从Unix而来,但天生具有轻量级性能可以发挥到极致而且稳定的系统,而windows为个人和办公而设计,界面和系统其它资源就让系统占用一部分,感觉很笨重,上天做一个长连接测试,单台Linux轻松上几十万,当然由于内存原因,否则可以上百万,而windows就很难做到,而且Linux哪里不行你可以去改的,windows就不行了,所以一个稳定高效免费的还有一大堆开源支持的,和一个收费性能相比没有那么高效的,好多公司自然选择前者

三是开发效率,上面说两点都说.net处于下风,但.net不是一无是处,.net有自身的优点,那就是开发效率,.net在java之上做了改进,让开发人员更容易开发,语言优美,做企业应用开发是很好的工具,可以快速出结果,你用其它开发要么大炮打蚊子,要么不稳定,在工厂和企业就要求很快做出来,这是.net优势,所以有他的市场份额,说这么多发现没个图,有评论的传一张

先以开发者的角度:

PHP跟.net根本就不是一个级别的,.net无论是应用场合、开发环境、帮助文档、编写风格、运行效率全部吊打PHP;PHP之所以流行就是因为很多开源框架都是现成的,刚好符合国人拿来主义的精神,修修改改就能拿来卖钱了。

JAVA各方面体量大致跟.net旗鼓相当,Windows系统下还是.net的天下,企业应用方面JAVA占用率高些,移动开发方面因为安卓和苹果的原因,.net失去了先机。微软正在逐步赶超,unitiy、.net core都在表明微软的态度。

以成本的角度:

微软的产品哪都好,就是版权太贵,Windows系统要钱,office要钱,服务器要钱,sqlserver要钱,再高级点用用企业版、集群之类的,做一个项目下来才能挣多少钱,都给微软了。PHP之所以能存活,就是linux免费,MySQL免费,Apache免费,PHP免费,就连框架都免费;JAVA跟PHP差不多。这种生态下导致了代码资源非常丰富,天下一般抄,开发成本就更低了。所以不是微软的东西不好,是JAVA和PHP开发成本太低了。用过对比你会发现,贵有贵的道理,所有开发帮助文档中,没有比微软做的更详尽的。

如果你是一个独立开发者,首选.net,Windows桌面应用、Windows服务、Windows 游戏 、网站、webservice、unity 游戏 ,除了安卓和苹果原生应用,.net都能胜任。如果微软可以在安卓下造出类似framework的东西,那就一统天下了。

为什么PHP、Java在市面上比.NET要受欢迎?而且从各大招聘网站上看PHP、Java的岗位比.NET岗位要多很多。

其实.NET也是有不少的优点的:

但是,它的致命缺点是:

设想一下,一个企业,如果服务器众多,那系统费用、数据库的授权费用,是多么庞大的一笔支出!

而PHP、Java则不同,它们都是跨平台开源免费的,虽然Java开始收费了(但还有免费的OpenJDK),所以PHP、Java还是首选。

如果用户采用微软全家桶解决方案, .Net 的开发效率和体验是完全可以吊打 Java 和 PHP 的, 但昂贵的价格, 让开发者和用户又爱有恨.

其实 .Net + C# 现在虽说不如一票跨平台框架语言用得人多, 但也远远谈不上没落.

在这个问题上, 个人认为 Microsoft 的原 CEO Steve Ballmer 难辞其咎, 在 Windows 霸主地位已经开始崩溃的时候 依然固执坚持封闭生态, 导致当时的 .Net 开发者 无不焦虑和彷徨.

不过 2014 年 Satya Nadella 接任 CEO 后, 微软 逐渐采取了 务实 开放 的做法, 收购 Xamarin 整合进 IDE, 推出 Visual Studio 社区版, C# 开始免费和跨平台, Microsoft 越来越像 Oracle, C# 越来越像 Java, 多多少少缓解了开发者的忧虑, 不少开发者开始回归, 毕竟 C# 优雅的语法 和 Visual Studio 卓越的开发体验 确实让人难以割舍.

.Net以前是不开源的,需要收费,有着各种版权问题,导致其语言生态发展不够。有其语言优点,但是从公司发展成本上来考虑,就注定不能作为首选。

PHP未兴起之前,很多公司使用.net来开发网站,因为相比较java的JSP,开发效率也还是要高一些,这对中小型企业的业务快速变更升级很重要。JSP运行速度会快一些,但其需要编译的特点,开发速度会相对缓慢。而对中小型企业来说,时间就是金钱,开发速度太慢,跟不上业务发展是很致命的。

之后PHP应运而生,其语言设计的初衷就是为了快速开发web应用。完全的开源免费,开发效率非常高,甚至一个人就可以搞定一个项目。中小型公司,从发展之初的考虑,逐渐将PHP作为首选发展语言。

随着PHP生态的逐渐强大,.net这种生态落后,开发速度比不上PHP,运行速度比不上JSP的语言也就逐渐没落了。

现在也有很多发展好了的公司,做大了做强了,又开始将自己的PHP项目往JSP迁移,因为开始追求运行速度。

所以PHP基本占领了中小型公司,而大公司则更多选择JSP。这都是语言的特性和优势决定的,将来如果出现一种语言能同时兼有开发速度和运行速度的免费开源的语言,那PHP和JSP也会逐渐走上.net这条路。一切都是企业成本和效率的问题。

+++++++++++++++++++++++++++++++++++++

第一次写问答,没想到有这么高的阅读量。

有些人说我对.net的认识太落后了,好吧,我开始学编程的时候,.net确实是比较封闭的状态,这些年我也不再去关注.net,对它的进一步了解也都是通过身边的同学朋友侧面反映的。

然后,真实情况是,我身边所有学.net的同学都转行了。因为岗位少,薪资低,真的生存很艰难哩。

遥想当年,我们一个宿舍的同学(一群穷*,只能住在学校破旧的8*宿舍里,因为住宿费真便宜啊 ),开始讨论选某个语言作为今后学习方向。有人选择了.net,有人选择了PHP,有人选择了JSP,然后各自努力。

现在,再来看彼此发展,.net的同学都转行了,PHP的都在中小型公司,JSP的在平安保险这种大公司里。薪资待遇对比,.net的同学和我们也有了差距。如果只看基本工资的话,还是PHP的高,哈哈。但是,加上年终奖就扑街了。我们同在深圳的经常一起出来聚聚,中小型公司的经常自嘲,辛辛苦苦一整年,比不上**一个年终奖。唉,大公司年终奖是真多啊,可以顶你大半年甚至一年的工资,人比人气死人。

当然,学PHP也不是都好,有个同学受不了压力转行做SEO了。也不是所有学java都好,我现在公司的测试就是个学java找不到工作,转而当测试的。

其实问题还是经验,有多年工作经验,就是你找工作最好的敲门砖了。

最后,没有最好的语言,适应市场发展的语言就是好语言。

各位看官,不喜勿喷!

我觉得最大的问题在于,使用Java体系的可以绑架一个公司的技术,因为他各类开源的框架以及底层的东西都可以修改,如果没有这帮大拿继续留在这个公司里面,后来的人很难去接受,或者理得清楚这些架构。而使用.net的话,基本上我觉得不太可能存在这个问题,因为知识体系比较清晰,而且掌握的人相对比较多,上手也相对比较容易。如果你是老板,会怎么样选择呢?你很希望别人绑架吗?

简单的说几句,就几句。我司用.net做web,推送服务器,消息服务器,数据握手服务,cad应用二次开发,gis应用,各种手持设备应用,各种服务窗口用的终端应用,视频监控等等等,你还觉得php真的能打过.net么?

我自己当初学过.net,java,现在算是略有了解。就我个人理解,许多公司不用.net语言的根本原因,就是.net在最初的时候不开源,教程少,入门较难,而且最后正式发行程序什么,还要交钱,所以在许多公司中首选java这种开放语言,教程多,入门简单,基本不收费(不收费是关键,划重点)。这也算是开源与闭源软件之争吧,最终以java为首的开源软件获胜,得以普及。

后来,开源软件已经是大势所趋,这时候微软.net阵营已经做了许多改变。我最熟悉.net中的c#语言,我就以c#为例说说吧。

微软以前信奉闭环,所有语言都不支持跨平台,也就没有c#;后来java越来越发展壮大,.net感受到了巨大危险,于是就模仿java,.net提出了c#,借以打击java。c#很像java语言,而且和java一样能够跨平台,windows、linx、android、ios都可以编程,这就是微软做的改变。

如果大家用过c#或者vb,c++来编写窗口程序,就会发现,这些语言写出来的windows窗口太棒了,而用java写出来的窗口程序,不敢恭维,太丑了,这也就是我后来学习c#的原因。(这也就是为什么说跨平台只是一个美梦而已)。


跨平台、开源之后的.net,其实跟java的基础结构并不差多少,但不具备数量优势,也就是说:java由于之前用的人太多了,各个方面的创新、发展都比较完善,有着坚实的用户群体、应用基础;而.net,由于是后发,已经失去了太多的应用环境,自然现在许多公司在不考虑是专为windows开发的情况下,是不会太主动使用.net。

我老早也是做.net开始的,那时候nginx开始流行,公司是一帮铁杆微软全家桶,谈命令行色变,于是对nginx, docker甚至git极力反对,我就走人。

.net core 就本身而言跨平台,我当然觉得不错。但就害怕再进一个 微软全家桶 团队,对任何高效主流的开源或命令行的软件极力*。

不知道干.net core的都有没有这种顾虑和遭遇? 毕竟微软的文化就是离开GUI不会走路,多数软件都不是先有命令行版本的。(而命令行版是实现虚拟机,容器技术,脚本话处理等的必须要求)。 就凭这个,我还是有点忌讳.net core.

个人的观点:

1、php肯定比不过.net了,用他主要是网站那块而已。

2、net和Java,单纯从语言c#比java优秀,开源生态肯定是Java,效率是c#

3、.net效率不高,在于windows平台,现在跨平台了,linux性能高于windows。

.Net core 有一定的机会。

为什么那么多公司不用 .NET,而选择PHP、JSP,是 .NET有什么缺点吗?

一是开源和闭源的区别,.net早期完全闭源,开发也是完全傻瓜式的,微软的思想就是让开发更容易,所以无法看到底层实现,给人的感觉就是走一条胡同,很快到达目的地却无法知道墙内的东西,接触过java和c之后,感觉就像掉进了大海,原来海底也这么漂亮,有太多开源的软件和框架,你可以看到更深层的东西,比如我们看dubbo,看进去后...

比较JSP、PHP、ASP、.net 等几种主流网络编程语言的优劣势

2、 缺少系统性的资料。3、 速度超慢PHP优点:1、 一种能快速学习、跨平台、有良好数据库交互能力的开发语言。2、 简单轻便,易学易用。3、 与Apache及其它扩展库结合紧密。4、 良好的安全性。缺点:1、 数据库支持的极大变化。2、 不适合应用于大型电子商务站点3、 ...

ASP、JSP、PHP还是ASP.NET好~~~分别概述一下~~ 先学哪个好~谢谢_百度...

建议原因如下:1 .net 是新流行的编程语言,是在asp之后出现的,都说这个好,但是本人并不觉得多好,当然还是有他自己的优势的,是流行语言,很多客户或者是公司都要求会这个,可以说有市场,所以建议学他 2 php 建议学他是因为关于这个语言的教程和开源代码非常多,很容易上手,.net这方面就显得要少...

.net 和php哪个好

先不说哪个好,他做完后在告诉你.net比php好,那纯粹是在忽悠你了,1、公司肯定这样说啊,他现在已经做出来了,他如果用ASP做的。肯定也会说ASP好,2、至与哪个好,和程序没关系,和程序员有关系,这主要是看程序员的编程能力了,主要考虑的是安全方面和运行速度方面,3、至于引擎搜索方便和程序的...

为什么那么歧视.net

从易用性上来说,.Net入门门槛较低,Java次之,而PHP的学习难度也不算太大。由于移植性与反射的原因,.NET应用软件的平台调用相当好,而Java这部分怕是只是呵呵了。Java调用的硬件一般是专门为Java开发的SDK,而.NET在没有SDK的情况下还可以使用PInvoke调用,这得益于.net只在windows上移植性有关(移植性确实不如Java...

asp . net jsp php 有什么区别啊

首先他们都是网络程序设计语言:asp.net是asp的变革升级,支持vb和c#开发语言。是微软推出的,有很好的使用基础。jsp是由sun公司推出。其最大的优点是能跨平台运行,缺点是安装配置复杂,学习较困难。php主要优点是免费和开源。可以有效减少网站的运行成本。缺点是没有大型公司的鼎力支持。运行环境配置也...

问高手:asp.net、JSP和PHP各自有什么优势和特点,各个技术都适合什么样的...

如果全部学的好的话,工资 JSP > ASP.net PHP和ASP差不多 但是JSP比其他两门语言难学,起码入门比它们难很多,但是如果说就业方面JSP就可能不如它们了。因为ASP和PHP出的早,很多单位用了这些语言不会轻易更换。虽然JSP的发展速度很快。但是也要看公司的需求。如果我总结一句。学什么都是一样...

asp.net\jsp\asp\php各自的优缺点

下面比较一下ASP、ASP.net、JSP和PHP的优点和缺点:ASP优点:1. 无需编译 2. 易于生成 3. 独立于浏览器 4. 面向对象 5. 与任何ActiveX scripting 语言兼容 6. 源程序码不会外漏 缺点:1、Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而...

为什么虚拟主机,要分为 .net主机 php主机 java 主机。

可以同时直接三种语言的,不过这样效率会降低很多。而且不同的主机对应着不同的开发环境和运行环境,分别为 asp.net php jsp 分开是从安全性 效率 等方面考虑的。再说了他们也不是一家厂商出的,当然是开发人员只用自己的啦!不过通过相关的配置和插件还是可以达到互相支持的!

net与php的区别和优势

1、net:在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。2、php:由于PHP的解释器的源代码是公开的,所以安全系数较高的网站可以自己更改PHP的解释程序。另外,PHP 运行环境的使用也是免费的。三、优势不同 1、net:使得C++程序员可以高效的开发程序,且因可调用...

为什么我们有那么多选择 人生为什么要有那么多选择 那么多人为什么选择你 为什么选择你而不是别人 为什么那么多人选择单身 为什么开那么多公司 为什么注册那么多公司 为什么你选择的人是我 明明有那么多的选择
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
要买十五万以内的车,是选吉利博越还是现代ix35 保定特色小吃都有什么 赵州镇平棘大街在那里?从石家庄怎么驾车去 跟一个二婚的女人谈对象,谈了将近一年,说了今年结婚,但是她的态度_百度... 并购与重组有什么区别 梦见自己乳房长两个球状的东东 如果在steam买了一个单机游戏,电脑换了系统后,我的游戏是重新玩还是继... 小苏打去黑头真的有用吗?不会毁容吧? 小苏打去黑头有用吗,分享下比较好的法子! 有人教过小苏打+水可以去黑头, 都是我没有实践过饿。。。 .NET的.net开源 CT显示肺窗示左肺下叶可见不规则高密度影,呈分叶状是什么病 一个从来不用朋友圈的人,怎么突然使用朋友圈了,以前谈恋爱也不用朋友圈,但是朋友圈里他从来不发*? 海信led48t1a电视是几k的? 海信电视LED48T1A如何连接有源音响能发出正常音量? Hisense/海信 LED48T1A 48吋智能液晶电视机彩电平板电视怎么样 海信LED48T1A和LED48K220有什么区别,求高人指点 海信电视 LED48T1A 是两脚插头,请问是否有必要安装天线隔离器 led48t1a经常自动重启 Hisense/海信 LED48T1A 48英寸智能液晶电视机彩电平板电视怎么样 海信led48t1a和led48ec280jd哪个好 海信led48t1a保护刚开机有海信的英文的图案出现也有声音但一下就保护无光栅无声 表示事物程序或过程的流程图是 安徽二建通过率2022 猫咪一般生几只小猫,布偶猫一胎生几只 禾笔顺笔画 康佳液晶电视led50r6680au亮度怎么设置 乾隆名字叫什么 乾隆叫啥名 苍耳,遐想 苍儿可以治头疼吗? 被豪猪扎伤的动物会死吗 麒麟系统工作区切换器怎么关 win7系统切换器无信号 为什么切换器在win xp和win7两个系统之间不能正常切换 动物的英文故事 如何在初中语文教学中运用分层教学法 如何在初中语文教学中实施分层教学 怎样教新课标九年级语文? 在昆虫记中虻蝇第一阶段是怎样生活的 11虻蝇的茧子有什么奇特之处? 怎么判断是不是得了三叉神经痛呢 想配置一台2000——2500的电脑,我主要安装一些matlab等软件来学习,偶尔玩些3D游戏,有经验的给个配置单 联想F31A能安装mSATA接口的固态硬盘吗? 华为mate10pro怎样换音量排线 核桃木泡水喝,能帮助睡眠吗? 核桃木,枸杞,红枣,桂圆泡水喝有什么好处,对身体有害吗 红枣枸杞茶叶核桃木一起泡水喝效果好吗 gta5安卓下载为啥玩不了 安卓能下载gta5吗 抖音分享好友栏怎么设置