ASP+与JSP之间的抉择
由于我同时是ASP和JSP的程序员,所以正开始写一系列的文章来比较两者的差别,当我写到一半时,ASP+被宣布了,所以我不得不重新开始审视这个问题。我正在同时做一个JSP项目和一个ASP项目,后者十分有趣,因为它开始是采用ASP3.0,但当项目结束后我将会转换为ASP+。到那时我将可以对ASP+有更近的考察,并提供更好的ASP+和JSP的比较。本文是我目前对ASP+的一些认识和看法,并分析了它对于象我这样的普通开发人员可能会产生的影响。
通过最初步的比较,我发现:
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进行了较大的发展。
在我审视完ASP+后,我的初步结论是:我未来项目主要还是要采用基于Java/JSP的技术。这有以下三个理由:
1) 要真正发挥ASP+潜力,你要使用C#或vb.net。这两种语言将成为ASP+标准的核心的脚本语言。这对ASP的未来发展很有好处。而我向来不喜欢用当前的Visual Basic来制作com对象。新的ASP+核心脚本语言更能发挥ASP+的价值。
显然,所有这些ASP+的新进展促使我对今后语言选择做一个决定,它将占据我未来的无数时间和努力。
回想起来,当Java开始发展起来时我正好学习了Java,那时我预感到这将是围绕我未来程序生涯的语言。于是,JSP理所当然地成为了我在web开发中的第一选择。
现在我已经是一个JSP fan,除非微软能够将我整个扭转过去,我感觉到自己正面临ASP+的巨大挑战。
2) ASP+依然完全锁定在微软的操作系统中。JSP比ASP+拥有更大的范围,它在别的服务器配置中也有很好的伸缩性。虽然Windows 2000 的优越性日益显露,但这对开发人员不构成问题。
3) 我并不能确信是否我能认同ASP+结构的各种方面,这需要更深入的分析,所以,我很犹豫。也许直到我使用了1-2个月后才会改变看法。总的来说,这需要在一个很高的层次来看待这个beta产品。
而作为一个ASP开发人员,ASP+也让我要停下来反思一下。未来8个月的ASP新项目将变得很困难。为什么?因为 ASP+和C# 带来了一个难题,它们要到2001年才正式提供。而很多性能方面的要求现在就需要确定。由于ASP+只是一个beta软件,所以现在我的第一个选择反而很简单了。现在的项目就采用ASP3.0。我认为各种beta版的语言都不太可信。
但我不能忽视ASP+,因为它很快就要推出,并代表了ASP的未来。ASP项目的管理者还需要考虑到未来的可平滑移植性及付出的时间代价等。另一个结果则是,这使得在近期使用PHP和JSP来代替ASP变得更可靠一些。
总的来说,
1) 如果使用ASP+,你将花费额外的时间学一些新的工具。
2) 新的工具有待于版本化,所以为什么不先关注于目前存在的东西?
3) ASP+将来会拥有的特性JSP已经拥有。
4) ASP+将你锁定到纯Microsoft的体系中。
最后,我预测会有很多人加入到PHP和JSP的行列。可是,仍然会有一部分人会受到ASP+给业界带来的激动所感染。我从没看到一个beta编程产品会带来如此的震撼!
同时,我还注意到一篇讨论.net的文章中也提到了同样的问题:
ASP+以自由软件作为开始,现在已经渐渐成为Microsoft的.Net框架的基石之一。Sun应该从中得到教训。特别注意的是,你需要许可证才能升级到ASP+,因为它和太多的产品集成在一起了。.Net框架太大了。在假定某个产品可以成为真正的产品之前,我通常等待它的第一个service pack。所以,即使ASP+已经在2001第一季度被版本化,我仍然要等到2001第二季度。
当然,因为ASP+ 已经产生了如此的激动人心,一旦推出,很多商店都会马上提供ASP+。
事实上我早已经使用beta版ASP+! 我发现它使用 .aspx 后缀,这使我我感觉Microsoft会在近期推出第一个ASP+的service pack。
下一年里,我们将看到在这个巨大的市场上Sun和Microsoft如何展开决战,而程序员们又将做出什么样的选择呢?
分享到:
相关推荐
综上所述,"asp+jsp movie"项目是一个结合了ASP和JSP技术的电影订票系统,旨在提供一个实际的应用场景,帮助学习者了解和掌握这两种技术的使用,以及如何在实际项目中进行多技术融合。通过研究和实践这个项目,可以...
即用即查——ASP+VBScript函数与对象参考手册 即用即查——HTML+CSS标签参考手册 即用即查——JavaScript核心对象参考手册 即用即查——JSP函数与对象参考手册 即用即查——XML数据标记语言参考手册 都是很好的参考...
PHP+asp+jsp+cgi+aspx+mysql全能套件 非网上流传版本,本人自己集成的版本,没有GUI界面 建议有一定基础的人使用,新手飘过
"简易服务器渗透靶场搭建asp+jsp+php工具合集"是一个专门为新手设计的资源包,旨在帮助用户快速建立一个用于练习和学习渗透测试的环境。这个环境涵盖了三种常见的Web应用程序开发语言:ASP(Active Server Pages)、...
标题中的“财务系统asp+jsp+access+sql.rar”表明这是一个关于财务系统的软件开发项目,采用了多种技术,包括ASP、JSP、ACCESS和SQL。这些技术分别代表了不同的编程语言和数据库管理系统,对于理解这个系统的工作...
标题中的“毕业论文翻译ASP+JSP”表明这是一个关于毕业设计或研究的论文,主要探讨了ASP和JSP这两种Web开发技术。ASP(Active Server Pages)是微软开发的一种服务器端脚本环境,用于生成动态网页;JSP(JavaServer ...
在实际应用中,有时我们需要将 Cognos 的报表功能与 JSP 前端页面进行集成,以便用户可以通过自定义的 JSP 页面访问和交互报表。以下是一个详细的 Cognos 8.3 与 JSP 集成的步骤说明: 1. **设置报表参数**: 在 ...
《ASP+Access开发动态网站实例荟萃》是针对使用ASP(Active Server Pages)与Access数据库进行动态网站开发的一本实践性教程。ASP是一种基于服务器端的脚本语言,常用于创建交互式的网页应用,而Access则是一种易于...
以下是ASP与JSP之间的七个主要区别: #### 1. **编程语言支持** - **ASP**:最初由微软开发,支持多种脚本语言如VBScrip、JScript等,但主要是基于Microsoft的.NET框架使用C#或VB.NET。 - **JSP**:完全基于Java,...
ASP、JSP与PHP的比较 ASP 是一个 WEB 服务器端的开发环境,利用它可以产生和运行动态的、交互的、高性能的 WEB 服务应用程序。ASP 采用脚本语言 VB Script(Java script)作为自己的开发语言。ASP 的技术特点包括:...
Ajax与ASP网页交互动态添加删除数据一例 Asp+Ajax无限级联动下拉框菜单Access版 ASP 树形菜单TreeView 多样式版 Ajax仿iGoogle双击编辑、网页拖动完整实例 ASP+jQuery无刷新读写数据库操作 Ajax提交数据实例_Ajax+...
### JSP与ASP的比较分析 #### 一、概述 JavaServer Pages (JSP) 和 Microsoft 的 Active Server Pages (ASP) 是两种广泛使用的Web开发技术,它们为开发人员提供了创建动态网页的能力。虽然两者在很多方面有着相似...
在ASP+Oracle网上购物系统中,ASP主要负责处理用户请求,动态生成页面内容,实现用户界面与后台数据库之间的交互。例如,用户浏览商品、添加购物车、结算等操作,都是通过ASP脚本来实现的。同时,ASP还可以进行...
- ASP+MSSQL团购网站程序源码(附说明文档) SLStuan(仿拉手网团购程序)是一套Groupon模式的开源团购程序,是一套仿拉手网团购程序,是国内首套采用ASP+MSSQL开发的团购程序,安装超简,功能超全面,在保留手拉手...
与ASP.NET类似,JSP也允许将业务逻辑和页面表现分离。在本项目中,JSP可能被用来处理用户的交互,比如提交评论或注册新用户。开发者可能将Java代码嵌入到JSP文件中,或者使用JavaBeans(或现在的Servlet 3.0+注解)...
**JSP(JavaServer Pages)与ASP(Active Server Pages)是两种不同的服务器端脚本语言,用于构建动态web应用程序。它们各自拥有独特的特性和优势,适用于不同的开发环境和需求。以下将详细介绍两者之间的主要差异。...
【描述】:“asp+sql+server+程序代码购物车”描述了这样一个项目,它利用ASP技术动态生成网页,与SQL Server数据库进行交互,存储和检索商品信息、用户信息以及订单数据。通过这个项目,开发者可以学习到如何构建一...
这个系统包含了两种不同的编程语言实现:ASP(Active Server Pages)和JSP(JavaServer Pages),同时附带了课程设计报告,详细阐述了系统的架构、功能实现以及开发过程。 ASP是微软开发的一种服务器端脚本环境,...
Flex+JSP Web应用开发实战详解-源代码.part4(共5)
《ASP+SQL Server典型网站建设案例》详细讲述案例程序的系统应用背景、系统构架及功能设计、系统主要工作流程、数据库结构的分析与设计、系统的发布及配置、数据库的创建与实现和功能模块的创建过程。通过阅读本书,...