比较ASP PHP 和JSP的优缺点
php优点
1. 跨平台,性能优越,跟Linux/Unix结合别跟Windows结合性能强45%,并且和很多免费的平台结合非常省钱,比如LAMP(Linux
/Apache/Mysql/PHP)或者FAMP(FreeBSD/Apache/Mysql/PHP)结合,或者数据应用够大可以考虑换
PostgreSQL或者Oracle,支持N种数据库。(N >= 10)
2. 语法简单,如果有学习C和Perl的很容易上手,并且跟ASP有部分类似。有成熟的开发工具,比如NuPHPed,或者Zend
Studio等等,再Linux平台下可以使用Eclipse等等。
3. 目前主流技术都支持,比如WebService、Ajax、XML等等,足够应用。
4. 有比较完整的支持,比如使用ADODB或者PEAR::DB做数据库抽象层,用Smarty或者smart template做模板层,如果是PHP
5.1的话,还能够使用PDO(PHP Data Object)来访问数据库。
5. 有很多成熟的框架,比如支持MVC的框架:phpMVC,支持类似ASP.net的事件驱动的框架:Prado,支持类似Ruby On
Rails的快速开发的框架:Cake等等,足够满足你的应用需求。
6. PHP 5已经有成熟的面向对象体系,能够适应基本的面向对象要求。适合开发大型项目。
7. 有成熟的社区来支持PHP的开发。
8.
目前已经很多大型应用都是使用PHP,比如淘宝网、Yahoo、163、Sina等等大型门户,很多选用PHP来作为他们的开发语言,所以大型门户都能够选用它,我想足够能够你的使用了。
9. 有很多开源的框架或开源的系统可以使用,比如比较知名的开源框架有Zend
Framework、CakePHP、CodeIgniter、symfony等,开源论坛有Discuz!、Phpwind等,开源博客
WordPress,开源网店系统如Ecshop、ShopEx等,开源的SNS系统如UCHome、ThinkSNS等。
php缺点
1.对多线程支持不太好,大多数时候我们只能简单的模拟去实现的。
2.语法不太严谨,比如变量不需要定义就可以使用,在c,java,c++中变量是必须先定义以后才可以使用的。
3.也许有经验的PHP程序员最感到痛苦的地方是PHP的解释运行机制。这种运行机制使得每个PHP页面被解释执行后,所有的相关资源都会被回收。也就是说,PHP在语言级别上没有办法让某个对象常驻内存。在PHP中,所有的变量都是页面级的,无论是全局变量,还是类的静态成员,都会在页面执行完毕后被清空。以JSP为例,在JSP中,Java
Bean的scope有四种有效值:Page、Application、Session、Request,分别对应页面、程序、会话、请求四种生存期。但在PHP中,只有Page一种生存期。
JSP的优势
(1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。
(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
JSP的劣势
(1) 与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
(2)
Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的。java文件和。class文件,以及对应的版本文件。
ASP的特点:
1、任何开发工具皆可发展ASP
只要使用一般的文书编辑程序,如Windows记事本,就可以编辑。当然,其他网页发展工具,例如,FrontPage Express、
FrontPage等也都可以;不过还是建议你用记事本来写,既省钱又方便,若是使用那些所见即所得的网页编辑来写ASP,可能会发生一些意想不到的离奇状态。
2、通吃各家浏览器
由于ASP程序是在网络服务器端中执行,执行结果所产生的HTML文件适用于不同的浏览器。
3、语言相容性高
ASP与所有的ActiveX Script语言都相容,除了可结合HTML,VBScript、Java Script、Active
X服务器组件来设计外,并可经由“plug-In(外挂组件模组)的方式,使用其他厂商(Third Party)所提供的语言。
4、隐密安全性高
如果我们在浏览器中直接查看网页的原始代码,就只能看到HTML文件,原始的ASP程序代码是看不到的!这是因为ASP程序先于网站服务(Web
Server)端执行后,将结果转换成标准HTML文件,再传送到客户端(Client)的浏览器上,因此,我们所辛苦撰写的ASP程序并不会轻易地被看见进而被盗用。
5、易于操控数据库
ASP可以轻易地通过ODBC(Open Database
Connectivity)驱动程序连接各种不同的数据库,例如:Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可将“文本文件”或是”Excel”
文件当成数据库用。
6、面向对象学习容易
ASP具备有面向对象(Object-Oriented)功能,学习容易,ASP提供了五种方便能力强大的内建对象:Request、Response、Sever、Application以及Session,同时,若使用ASP内建的“Application”对象或”Session”对象所撰写出来的ASP程序可以在多个网页之间暂时保存必要的信息。
ASP,ASP.NET,JSP以及PHP的区别
ASP,ASP.NET,JSP,PHP异同说明:
1、asp,jsp,php都是动态网页技术,可以实现浏览者和服务器的交互,比如读取数据库的资料,根据不同用户提供不同的界面等。
(1)asp是微软的动态网页技术,使用VB这样的脚本语言编写,大量的编程语言嵌入到html的代码中,用户在浏览网页时对服务器发送一个请求,服务器中的asp引擎来解析网页中嵌入的VB脚本语言,根据这些脚本语言绘制出完整的html页面返回给浏览器,浏览器就能够显示出页面了。
(2)jsp是sun的动态网页技术,jsp是用java语言编写的(更准确的说是java结合html语言),jsp和asp执行方式大致相同,用户提交请求后服务器的JVM解析jsp页面中的jsp脚本代码,然后根据这些jsp脚本代码生成html页面发送给客户端浏览器,浏览器显示出页面。
2、jsp和asp不同的地方是jsp背后有servlet技术,java
bean,EJB组件等技术的支持,可以使负责逻辑处理的代码和页面完全分离,jsp值负责显示要输出的信息,逻辑处理部分交给servlet和java
bean去做,这些代码不用写在页面上,而是写在后台专门的类中,java能办到的事jsp都能办到,
(a)asp大量逻辑代码和html代码参杂到一起使维护工作非常困难。jsp和asp更大的不同是jsp技术完全跨平台,不论linux和windows平台jsp都能完全支持,而asp只能在windows平台上运行,windows平台安全性又备受争议,jsp技术在对数据库访问性能方面比asp要强得多。
(b)asp.net是微软为了抗衡jsp推出的改进版asp平台,asp.net不再局限于vb,现在主要是C#,asp.net和jsp一样实现了逻辑代码和页面分离,但是不如jsp好。
asp.net的优点是简单,开发比jsp效率高。
ASP(Active Server Pages)是微软发布的脚本语言,利用它可执行的动态的Web服务应用程序。ASP的语法与Visual Basic非常类似,学过Visual Basic的人可以很快上手,它也是这几种脚本语言中较简单易学的开发语言。
ASP.NET是.NET FrameWork的一部分,是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。 指 Active Server Pages(动态服务器页面) ,运行于 IIS(Internet Information Server 服务,是Windows开发的Web服务器)之中的程序 。
JSP(Java Server Pages)是Sun公司退出的一种动态网页开发技术。JSP技术是以Java语言作为脚本语言的,熟悉Java语言的人可以很快上手。JSP虽然本身也是脚本语言,但是却和PHP、ASP有着本质的区别。PHP和ASP都由语言引擎解释执行程序代码,而JSP代码却被编译成Servlet并由Java虚拟机执行,这种编译操作仅在对对JSP页面的第一次请求是发生(简单来说,执行效率极快)。
PHP(Hypertext Prepocessor)的语法和Perl很相似,但是PHP所包含的函数却远远多于Perl。PHP语法简单,非常易学易用,很利于快速开发各种功能不同的定制网站。由于其免费、开源,它往往和同样免费、开源的Apache和MySQL搭配使用,可以非常快速的搭配一套功能丰富的动态网站。
以下是三者的性能对比:
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!