就像java的jvm一样,它可以支持:asp.net C# 等等语言
.net的生成借鉴了jvm的优势,它所支持的原生语言是C#,和java有很大的相似之处
首先:编译结果都一样,都是中间代码,不是机器码
其次:语法结构、风格非常类似
第三:都提供垃圾自动回收机制
第四:都是面向对象的开发语言
区别是:.net目前只能运行在windows,jvm运行在多种平台上
1.相对C#,JSP的脚本语言JAVA也是面向对象的、分布式的、解释的语言。2.与C#相似JAVA同样去掉了难以理解的指针等概念,取而代之的是类和对象。
3.
JSP有一项全新的技术――Servlet(服务器端程序)很好的节约
了服务器资源。
4.JAVABeans是针对ASP.NET的Server
Control的技术。只要
会JAVA,
JavaBeans就很容易写出。
5.再有就是JAVA的JDBC数据库连接技术。
6.JSP对XML同样有十分广泛的支持。
1)
面向对象性:
ASP+将C#作为一种面向对象语言,在很多方面来看,C#将成为微软的与Java相似的语言。
C#另一个有趣的地方是所有对象都自动变成为COM对象。如果C#能取得很大的市场份额,那么它将给ASP+带来类似于Java的功能,并且具备更快的性能,因为它可以和Windows环境紧密集成。
C#
是ASP+开发中一个最重要的功能,微软会将C#发展成为Java的强劲对手。这也是他们.Net框架的一个重要组成部分。我认为C#是微软在编程市场上击败对手的主要工具。我期待着微软能在这个产品后面倾注全力,这样,C#可以成为许多程序员的又一种选择。C#产生的结果是将进一步加固微软和Sun产品的战线。这对用户是有利的,他们可以选择两者之一来开发新的应用。
2)
数据库连接:
ASP另一个亮点是它使用ADO对象,ODBC,
OLE-DB和事务处理管理器。因此ASP
Web数据库应用开发特别简单。ASP+发展了更多的功能,因为有了ADO+!ADO+带来了更强大更快速的功能。JSP和JDBC目前在易用性和性能上同ASP/ADO相比已有些落后,当新版本ASP+/ADO+出现后这样的差别会更明显。我个人希望SUN应尽快能花大力气来追赶ASP+/ADO+的组合。
3)
大型站点应用:
ASP+将对大型站点(web
farms)有更好的支持。事实上,微软在这方面付出了巨大的努力。
ASP+可以让你考虑到多服务器(multiple
servers)的场合,当你需要更强大的功能时,仅仅只需要增加一台服务器。整个.Net框架已经充分地提供了这个方法。ASP+提供了外部会话状态(external
session
state)来提供内置式web
farm的支持。另外,由于请求的各组件相互间经过了充分的优化,所以速度很快。
于是ASP+现在可以在大型项目方面与JSP一样具有等同的能力。
而ASP+还有价格方面的优势,因为所有的组件将是服务器操作系统的一部分。对于JSP,你需要购买昂贵的应用服务器群来达到同样的目的。
4)
ASP+还提供更多的其它方面的新特性,例如:
*内置的对象缓存和页面结果缓存。
*内置的XML支持,可用于XML数据集的简单处理。
*服务器控制提供了更充分的交互式控制。
ASP+确实对ASP进行了较大的发展。
JSP同样是实现动态网页的一个利器。由于他的脚本语言是JAVA,所以继承了JAVA诸多优点。那么与ASP相比,应该可以说ASP和JSP基本不是一个档次上的。那么ASP.NET和JAVA却是可以抗衡的。
两者共通性:1).net和java都支持多层分布式应用的标准架构。
2) .NET Framework和Java都有一个受控的运行时环境,它不但将源代码转换成中间语言,而且将这些中间语言编译成本地的可执行代码。两个环境都支持碎片整理、动态类加载和异常处理等。
3) .NET和Java都倡导和支持基于组件的设计、多态性、继承和接口、反射、泛型等,也提供基础类库来执行I/O、XML处理、带有连接池的数据库接入、文本操作与网页脚本编写。
两者区别很多:
1).NET Framework提供了一个跨服务器、PC和其它设备的一致的、面向组件的模型。而J2EE提供EJB作为服务器端的组件模型。
2)J2EE以Java语言为主,但是支持多个操作系统平台.Net则基于Windows平台,但是支持多种语言。
3)在Windows操作系统上,.Net应用由于提供了原生态支持,理论上反而更加稳定。
4).Net被微软独家支持,有更好的一致性和兼容性J2EE被不同的厂家支持,没有两个厂家的标准是一致的。
5)微软公司提供了.Net从设计开发、测试部署、运行维护一揽子的产品解决方案,可管理性好Java则缺少这样一致性的官方产品线。
6)Visual Studio专门针对.Net量身定制,具有大量的组件和开发框架,开发模式统一Java则被多家公司支持,开发模式不一致,开发代码量大。
7)Visual Studio作为最佳开发工具赢得了一系列的大奖。评估过Visual Studio和其竞争对手的客户都说,相对于最好的Java工具Eclipse,Visual Studio开发效率更高。
8)Microsoft的产品线丰富,几乎遍及每一个角落,而且所有产品都可以相互集成,可以快速整合一个应用。
9)Java应用运行在虚拟机JVM上.Net应用运行在.Net Framework上,而.Net是操作系统的一部分。
10)Windows Server的许可证比三个遵从J2EE的商业服务器中的任何一个许可都便宜很多。这个比率是12比1。
11) .NET Framework开发工具的费用也更加低廉。Visual Studio .NET是.NET的整合开发工具,它的许可费用大大低于商业化的J2EE销售商制定的开发工具的费用。
12).Net开发效率高导致开发成本,使用.NET维护费用更低。专家认为许可费用并不是一个项目的最大开支。典型的软件开发和维护占项目总费用的 50-80%。Middleware公司研究表明,在.NET上一个给定的应用程序开发相对于J2EE,只需要1/3的代码。代码越少就意味着维护成本更 低。
13) .Net Framework提供了专门针对用户体验的WPF组件,用户体验十分丰富Java缺乏面向用户体验的开发支持。