介绍动态网站Web开发PHP、ASP还是ASP.NET(2)
小编等着你们的到来,共同探讨关于编辑语言的知识,我想大家会满载而归的!编程语言有哪些
实践——语言比较
变量声明
在VBScript中(ASP和ASP.NET都使用VBScript),在使用变量之前并不一定要对其进行声明,尽管技术文档通常建议这么做。使用Option Explicit声明,开发人员可以通过程序强制进行变量声明。在PHP中,变量可以被声明,尽管没有办法强制开发人员做到这点。的确,在使用之前变量都自动进行声明。PHP变量的优点在于变量可以被设置成为其他变量的引用(references),而在VBScript中变量只能通过值来定义。
以下是引用片段:
<%
' VBScript Example
Option Explicit
myVar = 1
myOtherVar = myVar
myVar = 2
' myResult will be 3
myResult = myVar + myOtherVar
%>
<?
// PHP Example
$myVar = 1;
'Use the ampersand to make a reference
$myOtherVar = &$myVar;
$myVar = 2;
// $myResult will be 4
$myResult = $myVar + $myOtherVar;
?>
变量收集
在PHP以及ASP中使用表单以及query string变量的方法非常相似。有很多办法可以访问表单以及query string变量的集合,例如通过name或者将其作为数组。在ASP.NET中情况则有很多不同,尤其是对于表单域。不同于盲目的寻找提交过的表单变量,code-behind可以对HTML页面中的每一个表单域了如指掌,并可以按照任何已知事件的执行为条件触发对这些表单域的值进行检查。其中一个事件是“postback”,当表单被用户提交时此事件被触发。其他的事件可以是客户端的程序,并且可以通过JavaScript来触发。在ASP.NET中,二者没有性质上的区别。
以下是引用片段:
<%
' ASP Example
myFormVal = request.form(“myInputField”)
myQSval = request.querystring(“myQSitem”)
myVal = request.item(“myFormOrQSitem”)
%>
<?
// PHP 4.1+ Example
$myFormVal = $_POST['myInputField'];
$myQSval = $_REQUEST['myQSitem'];
// PHP 3+ Example
$myFormVal = $HTTP_POST_VARS['myInputField'];
// If register_globals = on
$myVal = $myFormOrQSitem;
?>
字符串连接(String Concatenation)
PHP似乎对此问题给予了足够的重视,它允许将变量插入到字符串中而无需考虑通常的串连(Concatenation)问题。ASP.NET则把整个过程弄得比较麻烦,需要借助其StringBuilder类,但由此ASP.NET的运行速度也会快很多。网页编程语言
编程语言原本是被设计成专门使用在计算机上的,但它们也可以用来定义算法或者数据结构。正是因为如此,程序员才会试图使程序代码更容易阅读。[1]
编程语言往往使程序员能够比使用机器语言更准确地表达他们所想表达的目的。对那些从事计算机科学的人来说,懂得程序设计语言是十分重要的,因为在当今所有的计算都需要程序设计语言才能完成。[1]
在过去的几十年间,大量的编程语言被发明、被取代、被修改或组合在一起。尽管人们多次试图创造一种通用的程序设计语言,却没有一次尝试是成功的。之所以有那么多种不同的编程语言存在的原因是,编写程序的初衷其实也各不相同;新手与老手之间技术的差距非常大,而且有许多语言对新手来说太难学;还有,不同程序之间的运行成本(runtime cost)各不相同。[1]
有许多用于特殊用途的语言,只在特殊情况下使用。例如,PHP专门用来显示网页;Perl更适合文本处理;C语言被广泛用于操作系统和编译器的开发(所谓的系统编程)。[1]
以下是引用片段:
<?
// PHP Example
$link = MySQL_connect(“host”, “user”, “passWord”)or die(“mysql_error());
mysql_select_db(“database”) or die(“Could not select database”);
$query = “SELECT * FROM Table”;
$result = mysql_query($query) or die(mysql_error());
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
foreach ($line as $col_value) {
//do something
}
}
?>
连接数据库
对于数据库的连接问题,每种技术都表现出了各自突出的规范性。首先,每种情况都要建立到数据库的连接。对于PHP,在建立之后选择数据库(对于ASP以及ASP.NET则将在连接阶段完成)。随后将建立一个询问,并将其传送给数据库,由此可能产生也可能不会产生一条返回记录。
由于在本质上ASP.NET更为以对象为导向,并且支持复杂的错误处理(error handling),因此无论是相对于PHP还是ASP,在完成简单任务方面ASP.NET可能会需要编写更多的代码。但在优势方面,ASP.NET完成显示数据功能所需要的代码则大大少于PHP以及ASP——尤其如果使用内建的datagrid控制来自动创建HTML输出。
以下是引用片段:
<%
'ASP Example
Set objConn = Server.CreateObject(“ADODB.Connection”)
objConn.Open “Driver={SQL Server};Server=MyServerName;” & _
”Database=myDatabaseName;Uid=;Pwd=”
const strSQL = “SELECT * FROM Table” Set objRS = Server.CreateObject(“ADODB.Recordset”)
objRS.OpenstrSQL, objConn
Do While Not objRS.EOF
'do something
objRS.MoveNext
Loop
%>
' ASP.NET Example
<%@ Import Namespace=”System.Data” %>
<%@ Import Namespace=”System.Data.SqlClient” %>
#p#分页标题#e#
Width=”600″
BackColor=”#FFFFFF”
BorderColor=”#000000″
ShowFooter=”false”
CellPadding=2
CellSpacing=”0″
Font-Name=”Verdana”
Font-Size=”8pt”
HeaderStyle-BackColor=”#EEEEEE”
EnableViewState=”false”
/>
结论
选择ASP、PHP还是ASP.NET将最终取决于应用程序的需要,以及运行程序的系统环境。开发人员对于相似编程语言或范例的熟悉程度同样可以作为选择的因素。记住没有完美的方法和个人实际情况可以表明哪种技术是最佳选择。比如,使用ASP.NET为一个Windows服务器创建一个单页面的表单邮件应用程序似乎有些大材小用,但对于ASP来说这是极佳的应用环境。如果一个站点需要同Linux Apache服务器上的mySQL数据库连接,那么使用ASP或者ASP.NET则会显得力不从心。如果能够提前详细考虑用户的个人要求,那么开发人员在这些相互竞争的技术中进行选择的过程则已成功了一半。 c语言程序设计
精彩的视频课程等着大家的观看,相信你会收获更多你想要的知识,祝你学而有成!