主流网站开发技术的对比
在比较之前,我们分别简要介绍一下ASP、PHP和JSP技术的一些特点。
(转载自主机互联http://www.hlidc.net)
1.ASP的特点
·结合HTML标签,编写简单,可实现快速开发。
·无须编译,可在服务器端直接挑氏行。
·与浏览器无关,客户端只要使用可执行HTML码的浏览器,即可浏览ASP所设计的网页内容。
·ASP能与任何ActiveX Scripting语言兼容。除了可使用VBScript或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,如REXX、Perl、Tcl等。脚本引擎是处理脚本程序YgCOM(Component Object Model)对象。
·ActiveX Server Components(ActiveX服务器组件)具有无限可扩充性。可以使用Visual Basic、Jarva、Visual C++、COBOL等程序设计语言来编写所需要的ActiveX Server Component。主机互联官方网站www.hlidc.net,就是用asp设计的。
2.PHP的特点
·结合HTML标签,编写简单,可实现快速开发。
·PHP总共有3个模块:内核、Zend引擎以及扩展层,内核用来处理请求、文件流、错误处理等相关操作;Zend引擎(ZE);用以将源文件转换成机器语言:,然后在虚拟机上运行;扩展层是一组函数、类库和流,PHP使用它们来执行一些特定的操作。
·PHP与MySQL是绝佳组合。
·PHP提供的数据库接口支持彼此不统一,比如对Oracle、MySQL、Sybase的接口彼此都不一样。
3.JSP的特点
·结合HTML标签,同时有自己的标签库,由于需要很多的配置文件,并且层次很多,导致编写技术最为复杂。
·客户端提交的;求到服务器端响应,需要服务器端Java虚拟机的解释执行:将JSP页面转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,由生成的Servlet来对客户端应答。
·显示层和业务层分离。JSP页面用于显示样式,JavaBean用于编写业务逻辑,包括通过JDBC技术进行数据库连接。这样便于开发人员维护代码及版本升级。同时也很好地保护了作者的代码。
·可重用性强。由于JSP属于J2EE体系,Java编程的范畴,更强调面向对象性,。因此编写好的成型的组件(实现某一特定功能的Java文件)可用于项目的多个地方,方便管理。
·标签库可扩展。开发人员和其他人员可以为常用功能建立自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识—样的执行特定功能的构件来工作。JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和1技巧,并且能够扩展到支持企业级的分布式应用。作为采用Java技术家族的一部分,以及J2EE的一个成员,JSP技术能够:支持高度复杂的基于Web的应用。
·可移植性。JSP拥有Java程序设计语言“一次编写,随处运行”的特点,可以很方便地在Linux、UNIX及Windows等平台上移植。
·具有很强的安全性。
·具有很多成熟的架构支持,如:Struts、Hibernate、Spring、EJB3.0等框架。
4. 3种技术对比
下面我们从几个特性方面对这3种技术进行比较。
·反应速度。在操作数据库方面,JSP最快,其次是PHP,然后是ASP。
·移植性。JSP和PHP都具有很好的移植性,可以在Windows、Linux、Unix等多个平台上移植,而ASP只能用在Windows系统上。
·数据库访问。Java通过JDBC来访问数据库,通过不同的数据库厂商提供的数据库驱动方便地访问数据库,访问数据库的接口比较统一;PHP对于不同的数据库采用不同的数据库访问接口,所以数据库访问代码的通用性不强;ASP通过ODBC连接数据库,由数据库访问组件ADO(ActiveX Data Objects)完成数据库操作。
·安全性。由于JSP的策略是页面和后台分离,访问者不会看到后台逻辑,安全性最强。而PHP和ASP都是将脚本嵌在页面中,安全性比较弱。
·分布式多层架构。PHP和ASP实现简单的两层或三层架构,而JSP在这方面比较强大,可根据实际业务实现多层次,而且还有很多成熟的框架。如:Spring。
·开发成本。由于JSP比较复杂,开发起来成本高。ASP和PHP的开发速度快,简单易学,开发成本低。
·适用项目。JSP适用于开发大型的项目,PHP和ASP适用于开发中小型项目。
另外,在运行开销、扩展性、函数支持、厂商支持、对XML的支持等方面,JSP都是比PHP和ASP优秀的技术。Microsoft为了对抗Sun的J2EE(由Java、Servlet、JSP及一系列的支持组件支持的Web开发框架),开发了ASP.NET (C#)技术。ASP.NET是一个已编译的、基于.NET的环境,把基于通用语言的程序在服务器上运行,将程序在服务器端首次运行时进行编译,比ASP即时解释程序在速度上要快很多。而且可以用任何与.NET兼容的语言(包括Visual Basic .NET、C#和JScript .NET)创作应用程序。
ASP.NET的核心语言是C#,C#是一种类似于Java的语言,包括面向对象、继承、可重用等,被称作在现在的Web项目中可以和Java相匹敌的语言。但是,ASP.NET依然继承了ASP只能以IIS为服务器、运行在Windows系统上的缺点,虽然有自己的兼容其他平台的组件,但是移植起来相当麻烦。
本文由主机互联http://www.hlidc.net编辑,若转载请注明出处,谢谢!
|