php
ASP、ASP .NET、PHP、JSP四种语言的特点及区别是什么?
一、ASP、ASP .NET、PHP、JSP四种语言的特点及区别是什么?
ASP,全称为Active Server Pages
ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和Visual BASIC类似,可以像SSI(Server Side Include)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。目前在微软的 .net 战略中新推出的ASP.net 借鉴了Java技术的优点,使用C Sharp (C#) 语言作为ASP.net的推荐语言,同时改进了以前ASP的安全性差等缺点。但是,使用ASP/ASP.net仍有一定的局限性,因为从某种角度来说它们只能在微软的 Windows NT/2000/XP + IIS的服务器平台上良好运行(虽然像ChilliSoft提供了在UNIX/Linux上运行ASP的解决方案,但是目前ASP在UNIX/Linux上的应用可以说几乎为0)。所以平台的局限性和ASP自身的安全性限制了ASP的广泛应用。
ASP在执行的时候,是由IIS调用程序引擎,解释执行嵌在HTML中的ASP代码,最终将结果和原来的HTML一同送往客户端。
PHP,全称为PHP: Hypertext Preprocessor
PHP 的全名非常有趣,它是一个巢状的缩写名称——“PHP: Hypertext Preprocessor”,打开缩写还是缩写。PHP是一种HTML 内嵌式的语言 (就像上面讲的ASP那样)。而 PHP 独特的语法混合了C,Java,Perl以及 PHP 式的新语法。它可以比 CGI 或者 Perl 更快速地执行动态网页。
PHP的源代码完全公开,在 Open Source 意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得 PHP 无论在 UNIX 或是 Win32 的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1 ,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统 CGI 或者 ASP 等技术有了更好的表现。
平台无关性是PHP的最大优点,但是在优点的背后,还是有一些小小的缺点的。如果在PHP中不使用ODBC,而用其自带的数据库函数(这样的效率要比使用ODBC高)来连接数据库的话, 使用不同的数据库,PHP的函数名不能统一。这样,使得程序的移植变得有些麻烦。不过,作为目前应用最为广泛的一种后台语言,PHP的优点还是异常明显的。
JSP,全称为Java Server Pages / Servlet
JSP和Servlet要放在一起讲,是因为它们都是Sun公司的J2EE(Java 2 platform Enterprise Edition)应用体系中的一部分。
Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process),而Servlet却在响应第一个请求的时候被载入,一旦Servlet被载入,便处于已执行状态。对于以后其他用户的请求,它并不打开进程,而是打开一个线程(Thread),将结果发送给客户。由于线程与线程之间可以通过生成自己的父线程(Parent Thread)来实现资源共享,这样就减轻了服务器的负担,所以,Java Servlet可以用来做大规模的应用服务。
虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSP Parser)转换成Servlet代码,然后Servlet代码被Java编译器编译成 .class 字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(Script Language)版。
由于JSP/Servlet都是基于Java的,所以它们也有Java语言的最大优点——平台无关性,也就是所谓的“一次编写,随处运行(WORA – Write Once, Run Anywhere)”。除了这个优点,JSP/Servlet的效率以及安全性也是相当惊人的。因此,JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。
在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数,而是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错),逐步缩小出错代码段的范围,最终确定错误代码的位置。
JSP和ASP相比较:
运行速度、运行开销、运行平台、扩展性、安全性、函数支持、厂商支持、对XML的支持等等,ASP都不是JSP的对手。COM组件的复杂性实编程实现有一定的难度。而JAVABeans和JAVA的结合却是天衣无缝的。
JSP和ASP.NET相比较:
1.相对C#,JSP的脚本语言JAVA也是面向对象的、分布式的、解释的语言。
2.与C#相似JAVA同样去掉了难以理解的指针等概念,取而代之的是类和对象。
3. JSP有一项全新的技术――Servlet(服务器端程序)很好的节约了服务器资源。
4.JAVABeans是针对ASP.NET的Server Control的技术。只要会JAVA, JavaBeans就很容易写出。
5.再有就是JAVA的JDBC数据库连接技术。
6.JSP对XML同样有十分广泛的支持。
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进行了较大的发展。
二、何为WEB、MAIL、DNS、DB、WINNT/LINUX、TCP/IP、MSSQL/MYSQL、C/S、asp、asp.net、PHP、SQL2000?
AD是域控制器,DHCP是动态分配服务器、DNS是域名服务器、IIS是系统组件、Web网站服务器、Email是邮件服务器、MySQL是数据库。
三、请问ASP,ASP.NET,JSP,PHP有什么异同呢?
jsp优点是安全性高,严谨,执行效率好适合大型项目缺点是开发周期长php优点是简单,开发周期短,适合小型项目缺点是弱语言,安全性相比低asp.net优点就是简单,缺点是拓展空间小平台也限制
四、PHP+SQLite与ASP(ASP.NET)+ACCESS,您选哪个?
很多多功能空间都支持ASP+ACCESS,也支持PHP+SQLite; 就性能来说,PHP+SQLite并发能力强些,但并发1000/s以上的请求,两个都不建议使用;除非生成静态或缓存; 就易用性的话,ACCESS可以直接编辑,而SQLite要借助第三方软件了; 就安全性的话,两个都有被下载的可能,但可以通过相关策略解决,比如加密或改后缀等等; 综上所述,我支持PHP+SQLite开发。
五、PHP与ASP.NET优劣势,哪个更好?
如果两个一定要选的话。我还是推荐PHP。 因为你学PHP,附带你还要学别的东西,PHP在Linux下面的,Linux的一些命令总要学学吧。 然后PHP用的是Nginx服务器,那Nginx总要学学吧。PHP结合的数据库是Mysql,那么Mysql总要学学吧。 这么一来一去,基本上整个互联网的知识点都可以学到一半了。再接下来,PHP是用C语言写的,可以支持C语言扩展,那么C语言也要学学吧。 这样又可以广,也可以深。另外市场的话,PHP应该比.net占优势一些。工资来说算中等,高不了多少,低也低不了多少。 这倒不是.net不好,.net就是局限性太大了,捆死在windows下面。目前的市场格局下,.net的可用武之地也不是特别的大。关键是.net熟了,想转到Linux下去成本也高。 上面这些东西熟了,可以再切入到JAVA上面去。所以市场更加宽泛一点。
六、asp、php、asp.net、js等,哪个最好学?学了有什么用?
asp最好学,学好之后就是可以做网站,做一些小系统!
其实是php,php学好之后可以做一些大的网站!当然学好js可以让网站里面功能更炫体验感更好!
asp.net
可以做网站,也可以用来写一些系统,相对比较难一点!这些还可以,有搞头!
七、JSP,PHP,ASP和.NET有什么区别,哪种语言好?
JSP做大的分布式系统,一般大型企业用的多;PHP快速简洁,而且JSP一样具有跨平台的特点;ASP和.NET只能在windows上运行,ASP与PHP比起来差不多,不过没有PHP那么多的函数,所以遇到复杂疑点的就要做组件,很烦人的,此外也不如PHP安全高效,而且最重要的是:ASP已经被微软抛弃,停止技术更新了,就等着死掉后被NET代替,属于是正在死亡的技术,而PHP正日新月异的发展着,前途很广。
.NET基本上有着与JSP相同的功能和目的。将来,统帅网络编程的肯定是:JSP和.NET。而PHP则是两者之外的有力竞争者和黑马。八、ASP NET是什么?
答ASP.NET是微软公司开发的一种建立在.NET之上的Web运行环境,它不是ASP的简单升级,而是新一代的Active Server Pages。
九、PHP比asp.net和j2EE有何优势?
各有优势,PHP更适用于开发网站界面的美观,它是基于Html和javascript开发出来的,编译器为MacromediaDreamweaver,PHP一般用于界面的开发,asp.net和java都能够开发大型企业的项目,它们做出的东西都很好看,编程思想也相同的,只是它们的代码编程方式和编译器不同。
十、asp与 .net和asp.net之间是什么关系?
都是出自微软公司
asp是一款脚本语言主要语言是vbscript,也可以使用jscript来实现功能
.net 通常指的是.net framework框架
asp.net 指的是基于.net framework实现的web框架
热点信息
-
在Python中,要查看函数的用法,可以使用以下方法: 1. 使用内置函数help():在Python交互式环境中,可以直接输入help(函数名)来获取函数的帮助文档。例如,...
-
一、java 连接数据库 在当今信息时代,Java 是一种广泛应用的编程语言,尤其在与数据库进行交互的过程中发挥着重要作用。无论是在企业级应用开发还是...
-
一、idea连接mysql数据库 php connect_error) { die("连接失败: " . $conn->connect_error);}echo "成功连接到MySQL数据库!";// 关闭连接$conn->close();?> 二、idea连接mysql数据库连...
-
要在Python中安装modbus-tk库,您可以按照以下步骤进行操作: 1. 确保您已经安装了Python解释器。您可以从Python官方网站(https://www.python.org)下载和安装最新版本...