ASP.NET 与 JAVA 的比较


导 读:ASP.NET提供了WEB FORM、WEB CONTROL、WEB SERVIEC等等面向WEB 应用的改进;JAVA 则以其出色的跨平台特性,良好的面向对象属性获得了今天WEB开发的主流地位。这二者谁将在明天的竞争中获胜?

一 、先介绍一下ASP+


     ASP+ 是MicroSoft.NET 的一部分,作为战略产品,微软为ASP+ 设计了这样一些策略:易于写出结构清晰的代码,代码易于重用和共享,可用编译类语言编写 等等,目的是让程序员更容易的开发出WEB 应用,满足计算向WEB 转移的战略方向的需要。 

     ASP+ Beta1 已经于2000 年7 月开始测试,下面察看一下它的一些特性。

     支持编译类语言及RunTime 支持比如VB,VC++, C# ,< Script language = “ Vb “ runat = “ server “ > 

     比script 语言,编译类语言运行速度快,更适合编写大型应用。MicroSoft.NET 支持多语言混合编程。Page 在首次装入时编译,使得代码可以在runtime 处理,这一点像vb6.代码运行在virtual 环境中,类似java 的virtual machine。

     WEB Form 

     ASP+ WEB Form 提供了像VB Form 一样的编程习惯,可以触发server 端 events 。Web form 中可以布置 web control。

     Page Events 

     ASP+ 的设计是 object oriented ,Page object 是最顶端的 object ,Web control ,application 和自定义的page ,都从page object 继承下来。Page object 有 OnLoad 等事件。

     Web Controls 

     ASP+ 将提供5 类Web controls:

     与 HTML 中的 FORM 元素对应的Control,比如:button ,text 

     list 类 control ,比如 Repeater ,DataList ,DataGrid ,

     Rich Control

     Validation Controls

     Mobile Controls ,为WAP 设备提供 WML 。

     开发 Web Services 

     Web Services 允许系统向 Web 输出函数 ,输出方式是 URIs ,调用之后返回 XML.

     比如:

     < % @ WebService Language = “ c# “ % >

     using system.web.services;

     public class Shipping{

     <webmethod>

     public string OrderStatus ( string OrderNumber ){

     //代码

     }

     }

     调用: http://orders/tracking.asmx/OrderStatus?OrderNumber=BRU123 

     调用协议可以用 HTTP-GET ,HTTP-POST ,HTTP-SOAP.

     Web Service 为 WEB 系统集成,为基于 WEB 的分布式计算提供了良好的框架。 

     Caching 改进

     ASP+ 提供cache API ,程序员可以控制Cache 的使用,在某些情况下,可以编写性能更好的应用。

     Debugging 和 Tracing 

     ASP+ 内建的 Debugger 支持多语言混合编程,可以像 VB 中一样调试程序。增加了Trace 和 profiler 的功能。

     分离代码与HTML 模版 

     代码可以放在 class 模块中。

     分离的好处 ,便于程序员与页面制作人员独立工作,也便于代码共享。

     库 

     模块化的支持,是编写大型应用程序的必备,ASP+ 的模块化支持非常好。提供了常用库,比如 SMTP SendMail ,提供了结构化的代码组织方式 ,比如

     < % @ Import NameSpace = “ system.asp.util” % > ,引用了util 包。

     配置和实施 

     ASP+ 的配置信息放在 XML 文件中,而不是注册表中, 实施ASP+ 应用,只要把程序拷贝到一个目录,不需要注册任何对象。因为注册有时候需要原有的服务STOP ,等一系列问题。这真是非常好。

     ASP+ 支持编译过的程序的运行,可以保护技术秘密。

     纵观以上特性的介绍,ASP+ 改进了很多ASP 的问题,对于熟悉VB 、VC 或其他传统开发平台的程序员,ASP+ 提供了一样好的开发Web 应用的平台,可以说ASP 是基于Script 的,而ASP+ 基于完整的OO 程序设计思想。ASP+ 对于WEB Service 的支持,使得Web 应用的集成非常方便。

二、与JAVA 的比较


     JAVA 这种语言,偶然成为了当前Web 计算的主要语言,获得了广泛的业界支持,它portable ,良好的oo 属性 ,是互连网计算的强大的粘合剂。下面从两个方面观察一下java与微软的solution 的差别。

     业界支持 

     IBM 的“e-business application framework“架构在Java,xml,corba ,IBM 有VisuageAge,WebSphere 作为web 开发的工具。Ibm 认为选择application framework 有几个原则:不依赖于特定的平台,建立在工业标准之上,大部分计算放在server 端,scalable 等。 

     由于Oracle,sybase, 等业界厂商的广泛支持,java 可以说是web 计算事实上的工业标准。Java 的package 也丰富起来,支持各种应用的开发。

     开发模型 

     国内的软件厂商在向Web 计算迁移的时候,大多选择了java ,比如核心证券交易系统,用友财务系统,南北财务软件。核心软件和南北财务系统,用applet 开发客户端界面,使用起来与传统的软件没有什么差别。 

     可以说,目前采用 html 开发界面复杂的应用尚不是很合适,这是选择java applet 的理由。那么,ASP+ 出来之后,开发复杂的基于server 的应用要方便的多。

     目前采用applet 的应用,把很多计算逻辑方在客户端,这种方式尚不是未来的计算集中在server 端的方式。也许,java 也会推出新的package 支持这种应用。

     在server 端,java 采用 servlet、java bean ,ASP 采用Script、com 组件,目前的计算模式相类似。

     ASP+ 中提到的web service 集成的方式,目前微软力推SOAP、 UDDI 。但是,这些是建议成为w3c 标准,不依赖于特定的平台。

     从以上关于业界支持、开发模型的观察,可以说java 目前更适合广泛的web 计算。同时,我们期待ASP+ 的到来,期待更好的WEB 计算模型的到来。 

          

     
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值