asp,asp.net,php,jsp这四种网站编程语言是现在最常见的web编程语言。关于网站编程语言,每一种语言都有各自的特点,程序语言本身并没有明显的优劣之分,也并不一定说哪一种语言更安全,对于经验丰富的程序员而言,能否建设出一个好的网站关键是看其个人能力。
下面对asp,asp.net,php,jsp四种编程语言做下简要介绍:
1、ASP
ASP全名Active Server Pages,是一个WEB服务器端的开发环境, 它是微软的Windows IIS系统自带的脚本语言,利用它可以产生和运行动态的、交互的、高性能的WEB服务应用程序。ASP采用脚本语言VB Script(Java script)作为自己的开发语言。ASP的语法非常像Visual BASIC,学过VB的人可以很快上手,ASP也是这几种编程语言中最简单易学的开发语言。因为ASP脚本语言非常简单,结合HTML代码,可快速地完成网站的应用程序。
ASP在国内异常流行,而ASP+COM+SQLServer实际上也是一种不错的搭配,其性能也不输于PHP + MYSQL,特别是Windows系统和SQLServer都有图形界面,比APACHE和MYSQL易于维护。不过,正因为ASP很简单,所以单纯使用ASP所能完成的功能也是有限的,好在COM(Component Object Model)技术拯救了ASP,微软提供了COM/DCOM技术,极大拓宽了ASP的应用范围,使得ASP几乎具有无限可扩充性。
ASP简单而易于维护,很适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常困难。
2、ASP.NET
asp.net的前身ASP技术,是在IIS 2.0上首次推出(Windows NT 3.51),当时与 ADO 1.0 一起推出,在IIS 3.0 (Windows NT 4.0)发扬光大,成为服务器端应用程序的热门开发工具,微软还特别为它量身打造了Visual Studio开发平台。ASP.NET 使用基于.NET平台的语言如VB.NET、C#等,完全不同的东西。ASP.NET最新版本asp.net 4.5已经.Net Framework4.5已经在Visual Studio 2012平台应用。Visual Studio开发平台的强大,受到现在很多网站编程人员的追捧。
ASP.NET属于编译语言,和ASP的最大不同(ASP属于解释语言)。ASP.NET的速度 是 ASP不能比拟的。为什么ASP.NET 比 ASP 快:ASP.NET是编译语言,所以,当第一次加载的时候,它会把所有的程序进行编译(其中包括 worker进程,还有对语法进行编译,形成一个程序集),当程序编译后,执行速度几乎为0,而ASP是把代码交给VBScript解释器或 Jscript解释器来解释,当然速度没有编译过的程序快了。
而ASP.NET的服务器,要求安装一个.NET Framework,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行,不支持跨平台。
3、php
php可以说是现在市场占有率最高的编程语言。百度,新浪,新浪微薄等大网站均使用php编写。PHP是一种跨平台的服务器端的嵌入式脚本语言. 它大量地借用C,Java和Perl语言的语法, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态生成页面.它支持目前绝多数数据库。还有一点,PHP是完全免费的,不用花钱。
PHP是完全免费的开源产品,不用花钱,Apache和MYSQL也是用样免费开源,在国外非常流行,PHP和MYSQL搭配使用,可以说是完美的搭配,可以非常快速的搭建一套不错的动态网站系统,因此国外大多 数主机系统都配有免费的APACHE+PHP+MYSQL。通常认为这种搭配的执行效率比IIS+ASP+ACCESS要高,而后者的使用还必须另外交钱给微软。
4、JSP
JSP(JavaServer Pages)是Sun公司推出的一种动态网页技术。JSP技术是以Java语言作为脚本语言的,熟悉JAVA语言的人可以很快上手。
JSP本身虽然也是脚本语言,但是却和 PHP、ASP有着本质的区别。PHP和ASP都是由语言引擎解释执行程序代码,而JSP代码却被编译成Servlet并由Java虚拟机执行,这种编译 操作仅在对JSP页面的第一次请求时发生。
JSP是一种服务器端的脚本语言,最大的好处就是开发效率较高,JSP可以使用JavaBeans或者EJB(Enterprise JavaBeans)来执行应用程序所要求的更为复杂的处理,但是这种网站架构因为其业务规则代码与页面代码混为一团,不利于维护,因此并不适应大型应用的要求,取而代之的是基于MVC的Web架构。
MVC的核心思想是将应用分为模型、视图和控制器三部分。模型是指应用程序的数据,以及对这些数据的操作; 视图是指用户界面;控制器负责用户界面和程序数据之间的同步。通过MVC的Web架构,可以弱化各个部分的耦合关系,并将业务逻辑处理与页面以及数据分离 开来,这样当其中一个模块的代码发生改变时,并不影响其他模块的正常运行,所以基于MVC的Web架构更适应于大型应用开发的潮流。而jsp,php,asp.net在大型应用程序的开发中,都有引用mvc的思想。