首先可以很负责的告诉你,PHP和ASP相比,只有优点没有缺点;虽然ASP和PHP都是在1998年左右推出来的脚本语言,但是ASP现在已经过时了(还有一些地方小网络公司会用ASP套网站卖钱),如果你学了ASP以后想找这方面工作是真的很难。
那PHP有哪些优点呢?我觉得主要有以下:
1、跨平台支持
PHP是跨平台的,Windows、Linux、macOS等主流系统上都可以运行;而ASP只能跑在Windows系统上。
2、效率上(开发效率/运行效率)
在效率上,无论是开发效率还是脚本运行效率上,PHP完胜ASP。像ASP都没有MVC的概念,相比PHP落后很多。
3、生态上
在技术生态上,ASP谈不上生态,为什么这样讲呢?微软对于ASP早已停止支持了,所以当下热门的一些新技术在ASP里很难整合使用,比如:NoSQL、MQ等等。而PHP一直有官方支持而且也一直在升级版本,至少在未来十几年依旧淘汰不了,而且PHP开源库众多,新出的技术也都对应有PHP版本的实现,所以PHP具备持续发展性。
综上,建议所有在使用或刚了解ASP的朋友早点放弃ASP。虽然微软在ASP之后推出了ASPNET,但是ASPNET的市场占有率也是持续走低的,也比不上PHP的发展势头。
总的来讲,JavaSever PagesTM(JSP)和 微软的Active Sever Pages(ASP)在技术方面有许多相似之处。两者都是为基于WEB应用实现动态交互网页制作提供的技术环境支持。同等程度上来讲,两者都能够为程序开发人员提供实现应用程序的编制与自带组件设计网页从逻辑上分离的技术。而且两者都能够替代CGI使网站建设与发展变的较为简单与快捷。 尽管JavaSever Pages 技术和微软的Active Sever Pages在许多方面都有相似的,但仍然存在很多不同之处,其中最本质上的区别在于:两者是来源于不同的技术规范组织,其实现的基础:WEB服务器平台要求不相同。 一、JSP 技术:开放的技术 JSP和ASP技术明显的不同点:开发人员在对两者各自软件体系设计的深入了解的方式不同。JSP技术基于平台和服务器的互相独立,输入支持来自广泛的,专门的,各种工具包,服务器的组件和数据库产品开发商所提供。相比之下,ASP技术主要依赖微软的技术支持。 1、平台和服务器的独立性 JSP技术依附于一次写入,之后,可以运行在任何具有符合JavaTM语法结构的环境。取而代之过去依附于单一平台或开发商,JSP技术能够运行在任何WEB服务器上并且支持来自多家开发商提供的各种各样工具包。 由于ASP是基于Activex控件技术提供客户端和服务器端的开发组件,因此ASP技术基本上是局限于微软的 *** 作系统平台之上。ASP主要工作环境是微软的IIS应用程序结构,又因Activex对象具有平台特性,所以ASP技术不能很容易地实现在跨平台的WEB服务器的工作。尽管ASP技术通过第三方提供的产品能够得到组件和服务实现跨平台的应用程序,但是Activex对象必须事先放置于所选择的平台中。 2、开放的开发过程,开放的原代码 SUN应用JAVA社团性过程开发JSP技术。自从1995年,SUN已经用这种开放过程方法同国际JAVA组织合作开发和修改了JAVA技术与规范。针对JSP的产品,SUN授权了工具提供商(如Macromedia),结盟公司(如Apache,Netscape),最终用户,协作商及其他。最近,SUN将最新版本的JSP和JavaTM Servlet(JSP 11,JAVA SERVLET 22)的原代码发放给Apache,以求JSP与Apache紧密的相互发展。Apache,SUN和许多其他的公司及个人公开成立一个健壮的咨询机构以便任何公司和个人都能免费取得信息。 JSP应用程序界面(API)毫无疑问已经取得成功,并将随JAVA组织不断开放扩大继续完善。相反,ASP技术仅依靠微软本身的推动,其发展是建立在独占的,封闭的开发过程基础之上。 ASP技术 JSP技术 WEB服务器 微软的IIS或个人WEB服务器 任何WEB服务器包括Apache,Netscape,和IIS *** 作系统平台 微软的视窗系统 绝大多数的流行平台,包括solaris *** 作系统,微软的视窗系统,MAC OS,Linux,及其他UNIX系列平台产品。 跨平台访问 需要第三方ASP的引入产品 支持WEB信息机构环境中不同系列的计算机群即保证用户在当前软硬件及人力资源上的投资完全兼容,JSP技术提供灵活,开放选择:可以使用各种各样的工具提供商提供的工具,高度体现工业化标准输入与配置 3、从开发人员的角度来看:ASP和JSP技术都能使开发者实现通过点击网页中的组件制作交互式的,动态的内容和应用程序的WEB站点。ASP仅支持组件对象模型COM,而JSP技术提供的组件都是基于JavabeansTM技术或JSP标签库。由此可以看出两者虽有相同之处,但其区别是很明显的。 1)JSP标签可扩充性 尽管ASP和JSP都使用标签与脚本技术来制作动态WEB网页,JSP技术能够使开发者扩展JSP标签得以应用,JSP开发者能定制标签库,所以网页制作者充分利用与XML兼容的标签技术强大的功能,大大减少对脚本语言的依赖。由于定制标签技术,使网页制作者降低了制作网页和向多个网页扩充关键功能的复杂程度。 2)JSP跨平台的可重用性 JSP的开发人员在开发过程中一直关注可重用性。JSP组件(企业JavabeansTM,Javabeans,或定制的JSP标签)都是跨平台可重用的。企业Javabeans组件可以访问传统的数据库,并能以分布式系统模式工作于UNIX和WINDOWS平台。JSP技术的标签可扩充功能为开发人员提供简便的,与XML兼容的接口即共享网页的打包功能使其完全的工业标准化。 这种基于组件的模式很有效提高应用程序的开发效率,因为这种模式能够使开发人员利用快捷的子组件快速创建模板应用程序,然后再整合一些附加功能以后便可使用。象这样有效的方法在JSP中无处不在,并可将其打包成一个Javabean或一个工业标准化的Javabean组件。 二、JAVA的优越性 JSP技术是用JAVA语言作为脚本语言的,而ASP网页使用微软的VBScrip或Jscrip。JAVA是成熟的,强大的,易扩充的编程语言,远优于基于BASIC的脚本语言。如:JAVA的可执行性优于VBscript或Jscript语言。因为它们利用JAVA技术并且都被编译为JAVA Servlets,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于>
ASP全称Active Server Pages,为了克服CGI严重的扩展性问题,微软开发了ASP技术,解决了多用户访问进程,有效的利用了网络资源。ASP技术简化了WEB程序开发,支持动态WEB设计。ASP只用于服务器端,执行动态的,交互式的,高效率的站点服务器应用系统。
ASP以标记语言的形式嵌入到HTML中并发送到客户端,但是,显示在客户端浏览器的只是ASP执行结果所生成的页面,而其本身根本看不到,所以保密性好,安全!
ASP也支持脚本语言,只要服务器端装了脚本引擎就没问题了,方便!
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或者smarttemplate做模板层,如果是PHP
51的话,还能够使用PDO(PHPDataObject)来访问数据库。
5有很多成熟的框架,比如支持MVC的框架:phpMVC,支持类似ASPnet的事件驱动的框架:Prado,支持类似RubyOn
Rails的快速开发的框架:Cake等等,足够满足你的应用需求。
6PHP5已经有成熟的面向对象体系,能够适应基本的面向对象要求。适合开发大型项目。
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记事本,就可以编辑。当然,其他网页发展工具,例如,FrontPageExpress、
FrontPage等也都可以;不过还是建议你用记事本来写,既省钱又方便,若是使用那些所见即所得的网页编辑来写ASP,可能会发生一些意想不到的离奇状态。
2、通吃各家浏览器
由于ASP程序是在网络服务器端中执行,执行结果所产生的HTML文件适用于不同的浏览器。
3、语言相容性高
ASP与所有的ActiveXScript语言都相容,除了可结合HTML,VBScript、JavaScript、Active
X服务器组件来设计外,并可经由“plug-In(外挂组件模组)的方式,使用其他厂商(ThirdParty)所提供的语言。
4、隐密安全性高
如果我们在浏览器中直接查看网页的原始代码,就只能看到HTML文件,原始的ASP程序代码是看不到的!这是因为ASP程序先于网站服务(Web
Server)端执行后,将结果转换成标准HTML文件,再传送到客户端(Client)的浏览器上,因此,我们所辛苦撰写的ASP程序并不会轻易地被看见进而被盗用。
5、易于 *** 控数据库
ASP可以轻易地通过ODBC(OpenDatabase
Connectivity)驱动程序连接各种不同的数据库,例如:Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可将“文本文件”或是”Excel”
文件当成数据库用。
6、面向对象学习容易
ASP具备有面向对象(Object-Oriented)功能,学习容易,ASP提供了五种方便能力强大的内建对象:Request、Response、Sever、Application以及Session,同时,若使用ASP内建的“Application”对象或”Session”对象所撰写出来的ASP程序可以在多个网页之间暂时保存必要的信息。
ASP的含义及特点
ASP的含义及特点ASP是Active Server Page的缩写,意为"动态服务器页面",什么是ASP。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是asp,现在常用于各种动态网站中。另外阿斯匹林、天门冬氨酸、阿里软件销售合作伙伴、美国武装系统暨程序公司等的缩写也都为ASP。
ASP网页的特点
ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。与HTML相比,ASP网页具有以下特点:
(1)利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术;
(2)ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试;
(3)服务器上的ASP解释程序会在服务器端执行ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;
(4)ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强,名词解释《什么是ASP》。例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息;
(5)ASP可以使用服务器端ActiveX组件来执行各种各样的任务,例如存取数据库、发送Email或访问文件系统等。
(6)由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可防止ASP程序代码被窃取。
(7)方便连接ACCESS与SQL数据库
(8)开发需要有丰富的经验,否则会留出漏洞,让黑客利用进行注入攻击
ASP也不仅仅局限于与HTML结合制作WEB网站,而且还可以与XHTML和WML语言结合制作WAP手机网站。但是其原理也是一样的。
ASP的工作原理
当在Web站点中融入ASP功能后,将发生以下事情:
1、用户向浏览器地址栏输入网址,默认页面的扩展名是asp。
2、浏览器向服务器发出请求。
3、服务器引擎开始运行ASP程序。
4、ASP文件按照从上到下的顺序开始处理,执行脚本命令,执行HTML页面内容。
5、页面信息发送到浏览器。感觉很好哦,我过来支持一下。
;以上就是关于PHP和ASP相比,有哪些优缺点全部的内容,包括:PHP和ASP相比,有哪些优缺点、JSP和ASP各自的优势!、ASP的优点是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)