首页 > 教育学习 > 为什么 > C#语言和.NET框架相比JAVA PHP Python等Web开发技术有哪些优劣?

C#语言和.NET框架相比JAVA PHP Python等Web开发技术有哪些优劣?
2012-01-19 17:40:34   来源:   点击:

    C#语言和.NET框架相比JAVA PHP Python等Web开发技术有哪些优劣?

    7 个答案

    • 答案 1:

      c#开发企业级应用可以体现出相当的高效,如自动化测试,Intelli sense技术等。.net在开发应用时是基于类库的,类库的好处很多,比如屏蔽了底层的实现,使开发者只关注应用层的逻辑及UI,开发出更好看好用的应用而不用再回忆当年的诸如排序算法;比如类库采用了多种设计模式,因此类库的扩展是很方便的。当然,这种类似傻瓜相机式的模型,可能会让我们更懒,诸如忘记了排序算法都有哪些。JAVA的出现要比c#早一些,c#也是微软战略上与sun竞争的产物,因此c# 和java有很多相像的地方,比如类c语法,比如类的单继承和接口的多继承等等。他们之间的优劣无法简单的归纳出,java 的优势主要体现在虚拟机技术上,虚拟机技术使 java成为跨平台语言,而c#在出生伊始仅仅作为windows平台的开发语言,随着技术的推进,目前有很多办法可以让c#及.net框架下其他语言跨平台编译运行。PHP 跟python是解释性脚本语言,不需要预编译即可运行。这一特点,决定了他们要比预编译语言更灵活,无需重新编译你就可以修改代码并即时看到结果。其中,python是基于动态语言模型开发的,是真正的everything is object,面向对象语言的多态性在python中发挥的淋漓尽致,同时在语法上,python的强制缩进等编码规则,为开发者带来了很大的灵活性,以及更少的代码量。python的解释器是由c语言开发,所以python代码在运行时会被解释器编译为c的代码,并进一步编译为字节码,也就是说,python实际上是以接近c语言的效率来运行的。而字节码(二进制码)可以跨平台转移,所以python也是跨平台的编程语言。python对字符串的处理功能非常强大,切片、解析以及动态语言的map,reduce可以方便的实现对字符串的解析排列组合。其实,语言的优劣——包括其背景、IDE、性能等因素——并不足以成为其真正的优劣,善用语言的特点,合适的地点用合适的语言,这是弄清楚其优劣的终极目的。个人见解,思路凌乱,谅解。
    • 答案 2:

      C#是微软综合了java等语言优点创造的语言。不过珍惜生命,远离微软。
    • 答案 3:

      在web开发上.net的webform模型的出现个人觉得其实是为了那批winform开发者更好的迁移到web开发中来而来的,这个模型的控件话开发在一定程序上确实能够极大的提高web开发的效率,但是其中附带的一些viewstate这些东西如果使用不当的话也会成为一个累赘,占用带宽。当然了,如果你够熟悉,可以最大话.net web开发的效率。相比之下java的那一套东西就相对比较经典一些,而.net最新的mvc其实也是借鉴了很多java那边的web开发的框架。抛开web这些东西不谈,.net在语言特性上个人觉得相对于java还是比较有优势的,java语言本身变化不是很大,不像.net的几次版本更新加入了很多语法方面的东西。
    • 答案 4:

      纠正楼主的一个错误,就是JAVA不能被说为web开发技术,JAVA领域中涉及web开发的核心是JSP,就类似.net中asp.net.
    • 答案 5:

      如果是WEB开发,只存在开发者自己的劣势。 否则,跨平台问题是.net永远的痛,除非某一天微软真的变成的慈善机构。
    • 答案 6:

      C#给我的感觉就是很容易学,开发速度快,而且微软的ide和msdn做得极好,不好的地方就是太高级了把很多底层的东西屏蔽掉了,所以不建议第一个学习的语言选C#,这样会导致你很多东西都没了解到,还有就是个人不喜欢asp.net的事件机制,为了实现一个服务器端事件,.net会在aspx页面上生成很多的js代码和用于传值的隐藏域,这给我的感觉一是恶心,再者就是与如今提倡的web语义化相悖。
    • 答案 7:

      背靠大树好乘凉不过大树还没枝繁叶茂时也很折腾就是了

相关热词搜索:

上一篇:和“陈生”发音接近的英文名字有哪些?
下一篇:百度团购存在的意义是什么?通过什么方式盈利?