当前位置:编程学习 > php >>

动态网站web开发 PHP、ASP还是ASP.NET

    这是一个经常被提出的问题,并且它很容易把人们带入争论Linux还是Windows的歧途。这样的争论事实上反映出了对于相互竞争的web开发(在现在的程序开发中占有很大的比重)技术要进行并行分析是多么困难的一件事情,而这一难度同时因为开发人员对任何可比较操作系统的不同意见而大大增加。
 
    所以与其继续参与到这样的争论中,我们还不如来看看每一项技术对于特定web开发(在现在的程序开发中占有很大的比重)以及运行环境所表现出的优势。尽管ASP和php(做为现在的主流开发语言)的相似程度大于其中任意一种与asp.net(微软最强的开发语言)的相似程度,我们还是要讨论asp.net(微软最强的开发语言)。原因是开发人员常常将其与ASP相混淆,并且在微软的努力下asp.net(微软最强的开发语言)的确会在将来完全取代ASP。

基本理论——特点概述
php(做为现在的主流开发语言)——超文本预处理器(Hypertext Pre-processor)
php(做为现在的主流开发语言)是开放源代码服务器端的脚本语言,在语法上同C语言非常类似。尽管最初是被设计用于基于Linux的apache(Unix平台最流行的WEB服务器平台) Web 服务器系统,现在的php(做为现在的主流开发语言)已经被移植到了任何操作系统并兼容任何标准Web服务器软件。由此也可以得出php(做为现在的主流开发语言)的三大主要优势。首先它是跨平台的技术,因此php(做为现在的主流开发语言)应用程序可以被方便的移植——当然这还要取决于诸如厂商特定数据库等需要集成的额外组件。这样的可移植性还带来了另一方面的优势,即绝大部分的Web主机提供商都会支持php(做为现在的主流开发语言),因此根据需要更改主机将会非常方便。

第二点,由于php(做为现在的主流开发语言)同C编程语言有很多相似之处,对于熟悉相关语法的开发人员来说,php(做为现在的主流开发语言)则非常容易上手——这种语法同样在Java、JavaScript以及Perl中得到应用。第三,由于是开放源代码产品,php(做为现在的主流开发语言)将继续快速发展,更为重要的是相关漏洞补丁将免费的定期植入到核心库中。

此外,在一些特定的编程需求下,php(做为现在的主流开发语言)对于开发人员显示出了更为诱人的吸引力。首先,php(做为现在的主流开发语言)有内建库支持对于图片及PDF文档的直接创建和相关操作。这意味着当一个应用程序调用包含有anti-aliased类型文本的动态创建菜单图像,或者是需要导出Acrobat格式页面时,php(做为现在的主流开发语言)都将是解决此类问题的理想技术。尽管这些功能在理论上也可以通过其他与php(做为现在的主流开发语言)相竞争的技术获得,但往往其他技术需要安装第三方自定义组件才能实现。

另一点使得php(做为现在的主流开发语言)成为编写服务器脚本最佳选择的是在处理连接mySOL或者Postgres数据库一类的问题时php(做为现在的主流开发语言)的良好表现。尽管对于mySOL或者Postgres数据库的访问可以通过ASP技术借助ODBC连接来实现,但这常常需要系统管理员进行额外的配置。幸运的是,这点限制在asp.net(微软最强的开发语言)中得到了改正,当需要建立类似于使用MS sql server(WINDOWS平台上强大的数据库平台)的直接数据库连接时可以通过MySQL(和PHP搭配之最佳组合)提供数据。

ASP——动态服务页面(Active Server Pages)
微软将ASP引入Windows NT Server 4并将其作为iis(微软的WEB服务器平台) Web服务器下的动态Web应用程序的默认使用平台。由于它使用VBScript(Visual Basic语言的一个分支),ASP立即被熟悉Microsoft IDE——Visual Studio编程的开发人员所追捧。随着脚本语言的不断发展,研究人员对ASP并没有引入太多功能使之加入到技术竞争的行列。因此,在php(做为现在的主流开发语言)中可以看到的诸如图像操作等功能没有集成到ASP中。但开发人员仍然可以通过DLL文件的形式编写(或者安装)第三方COM对象来完成类似的工作。在服务器自身允许的情况下,通过这种方式可以编写代码来完成任何动作。当然,造成的缺陷是这将导致为了配置这些服务开发人员不得不与桌面系统进行交互——对于web开发(在现在的程序开发中占有很大的比重)人员来说这项功能并不是必须的。
 
ASP的优势是在企业环境中微软服务器几乎无处不在。此外,MS sql server(WINDOWS平台上强大的数据库平台)同样具有广泛的市场,并且能很好的支持ASP(这并不会让人感到惊奇)。尽管事实上通过ODBC可以兼容任何数据来源,但sql server(WINDOWS平台上强大的数据库平台)以及文件DSN访问(file DSN access(小型网站之最爱))可以在代码一级得到实现。

asp.net(微软最强的开发语言)
是选择ASP还是php(做为现在的主流开发语言)的争论正在随着.NET的崛起而越来越显得多余。的确,过去长达数年的争论将随着是选择Java还是.NET技术(或是两者)答案的揭晓而终结。ASP以及asp.net(微软最强的开发语言)的唯一联系是二者都使用VBScript。而单独就.NET而言,它可以使用VBScript以及其他大约20种语言。

补充:Web开发 , php ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,