翻譯:EasyChen Exlcsoft.com

概觀

開(kāi)發(fā)界正在進(jìn)行的一個(gè)爭(zhēng)論是PHP和ASP中哪一個(gè)平臺(tái)更適合網(wǎng)站開(kāi)發(fā)。這場(chǎng)爭(zhēng)論由于微軟的ASP.net帶來(lái)的巨 " /> 成人免费福利,农村寡妇女人一级毛片,国产精品人伦久久

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

白刃之戰(zhàn):PHP vs. ASP.NET(節(jié)選)-架構(gòu)比較

   作者:Robert Lair and Jason Lefebvr Intensity Software, Inc.

  翻譯:EasyChen Exlcsoft.com

  概觀

  開(kāi)發(fā)界正在進(jìn)行的一個(gè)爭(zhēng)論是phpASP中哪一個(gè)平臺(tái)更適合網(wǎng)站開(kāi)發(fā)。這場(chǎng)爭(zhēng)論由于微軟的ASP.NET帶來(lái)的巨大變化而進(jìn)入了新時(shí)期。和ASP 3.0比起來(lái),ASP.NET采用了全新的設(shè)計(jì),有著很多新的特性和優(yōu)點(diǎn)。究竟ASP.NET 會(huì)給phpASP之間的爭(zhēng)論帶來(lái)什么樣的影響呢?本文將為你提供這個(gè)問(wèn)題的答案的相關(guān)信息。

  架構(gòu)比較

  php

  php4.0以Zend Technologies的開(kāi)源引擎Zend Engine為核心。當(dāng)用戶(hù)瀏覽器向一個(gè)由php實(shí)現(xiàn)的網(wǎng)絡(luò)服務(wù)器發(fā)出請(qǐng)求時(shí),這個(gè)請(qǐng)求被傳給Zend Engine,它將對(duì)php腳本進(jìn)行編譯。如果編譯順利, 編譯后的代碼將被傳遞給生成發(fā)送給客戶(hù)端的最終HTML代碼的Zend Engine Executor。從開(kāi)發(fā)者角度看,php 4.0的框架既有優(yōu)點(diǎn)也有缺點(diǎn)。

  因?yàn)?a href=/itjie/phpjishu/ target=_blank class=infotextkey>php是開(kāi)源的,所以它得到了很多不同平臺(tái)和web服務(wù)器的支持。雖然比以前的php引擎大,Zend Engine仍然是輕便和強(qiáng)壯的。作為擴(kuò)展,php也支持面向?qū)ο螅试S用戶(hù)建立自己的類(lèi)和對(duì)象。但是,由于某些原因,php不是真正的面向?qū)ο箝_(kāi)發(fā)環(huán)境。最好的一個(gè)例子是類(lèi)成員函數(shù)和屬性的作用域。在php中,一個(gè)類(lèi)中的所有變量可以從外部讀寫(xiě),這使得類(lèi)的實(shí)現(xiàn)無(wú)法隱藏。

  另外,php不是強(qiáng)類(lèi)型語(yǔ)言(就是說(shuō),如果你比較字符4和整數(shù)4,結(jié)果是相同的),這在架構(gòu)大型程式時(shí)帶來(lái)問(wèn)題,也使得程式的調(diào)試變得困難。使得調(diào)試更為困難的是,你甚至不需要聲明變量,這和關(guān)掉explicit 選項(xiàng)的ASP很像。如果php在腳本中遇到新的變量,它只會(huì)靜靜的創(chuàng)建它。

  雖然被認(rèn)為是寬松的php框架的靈活性,不過(guò)大概每個(gè)開(kāi)發(fā)者在一些情況下都會(huì)花數(shù)小時(shí)去解決由這個(gè)特性導(dǎo)致的BUG。對(duì)象在php中是語(yǔ)言級(jí)變量。它們?cè)诤艽蟪潭壬媳划?dāng)作簡(jiǎn)單變量類(lèi)型處理。(就像整型和字符型變量一樣)當(dāng)進(jìn)行像變量賦值和將對(duì)象作為參數(shù)傳遞給函數(shù)的操作時(shí),整個(gè)對(duì)象被復(fù)制。這將導(dǎo)致低效。另外,不可預(yù)知的運(yùn)行時(shí)行為會(huì)經(jīng)常發(fā)生。

  php缺少一些其它絕大多少現(xiàn)代開(kāi)發(fā)框架擁有的關(guān)鍵元素。其中最重要的一個(gè)是結(jié)構(gòu)化異常捕捉。雖然可以給進(jìn)程錯(cuò)誤注冊(cè)一個(gè)error handler,對(duì)于語(yǔ)言本身來(lái)說(shuō)并不方便。由于"try . . . catch"錯(cuò)誤捕捉的缺席,很多php開(kāi)發(fā)者完全忘記了錯(cuò)誤捕捉或者在很窄的范圍中使用。

  ASP.NET

  ASP.NET的核心是Microsoft .NET框架。這個(gè)框架提供了common language runtime (CLR)和類(lèi)庫(kù),ASP.NET就建立在這之上。

  當(dāng)ASP.NET資源第一次被請(qǐng)求時(shí),高層語(yǔ)言代碼(像Microsoft Visual Basic® .NET 或者C#)被編譯成Microsoft Intermediate Language (MSIL) code。這個(gè)代碼將由CLR運(yùn)行以產(chǎn)生用于網(wǎng)頁(yè)服務(wù)的機(jī)器代碼。

  ASP.NET強(qiáng)制開(kāi)發(fā)者使用真正的面向?qū)ο蠓绞竭M(jìn)行程式設(shè)計(jì)。所有的對(duì)象都是真實(shí)的OO對(duì)象,支持如繼承、多態(tài)(方法的重載)和封裝的特性。

  另外,ASP.NET中的所有語(yǔ)言都是強(qiáng)類(lèi)型的。舉個(gè)例子,要比較整數(shù)4和字符4,你需要先將變量轉(zhuǎn)換為整型,反之亦然。

  ASP.NET采用事件驅(qū)動(dòng)編程模型,這意味著,代碼片斷由在程式運(yùn)行時(shí)可能發(fā)生的事件聯(lián)系起來(lái)。

  舉例而言,在ASP.NET 頁(yè)面中的Page_Load()事件放置當(dāng)瀏覽器讀取Web form時(shí)將要運(yùn)行的代碼。有很多附加事件和ASP.NET Page object相聯(lián)系,開(kāi)發(fā)者可以在它們生命周期中的任何時(shí)間執(zhí)行代碼。同樣的,一個(gè)Web form上的各個(gè)控件都有一系列可在觸發(fā)時(shí)可執(zhí)行代碼的事件。比如,通過(guò)在一個(gè)Web form添加一個(gè)button,你可以添加一個(gè)方法(被叫做一個(gè)delegate)來(lái)在用戶(hù)點(diǎn)擊button時(shí)執(zhí)行。幾乎所有控件都有一個(gè)或者多個(gè)事件。

  

  你可以訪(fǎng)問(wèn)Microsoft在QuickStart指南中提供的關(guān)于Class Browser的例子,可以在http://samples.gotdotNET.com/quickstart/ASPplus/samples/classbrowser/vb/classbrowser.ASPx在線(xiàn)運(yùn)行它。

  Easy注:這篇文章譯自MSDN,是 白刃之戰(zhàn):php vs. ASP.NET 的一部分。文章的其他部分Easy將視事件和精力選譯部分。

AspNet技術(shù)白刃之戰(zhàn):PHP vs. ASP.NET(節(jié)選)-架構(gòu)比較,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲美女精品视频 | 日本美女视频韩国视频网站免费 | 国产成人+综合亚洲+天堂 | 久久精品免视国产 | 国产中文字幕乱人伦在线观看 | 日本一区二区三区精品国产 | 一二三四视频社区在线中文1 | 永久黄网站色视频免费 | 欧美成人网7777视频 | 在线xx视频 | 国产精品19禁在线观看2021 | 美女胸又大又www又黄的网站 | 欧美成人激情 | 亚洲综合图片人成综合网 | 成人福利在线观看免费视频 | 91精品国产91久久久久 | 亚洲精品国产手机 | 国产亚洲精品观看91在线 | 久久久精品中文字幕 | 亚洲精品福利网站 | 91在线短视频| 亚洲卡5卡6卡7国色天香 | 国产精品综合色区在线观看 | 思思久久这里只精品99re66 | 91短视频在线播放 | 91久久九九精品国产综合 | 国产色手机在线观看播放 | 亚洲成人欧美 | 国产精品视频第一区二区三区 | 久草视频一区 | 免费观看很黄很色的大片 | 国产精品资源手机在线播放 | 色婷婷色99国产综合精品 | 人人做人人爽人人爱影视 | 91精品福利视频 | 国产精品成人观看视频网站 | 成人精品久久 | 中文字幕一区二区日产乱码 | 亚洲欧美在线视频观看 | 亚洲国产一区二区三区 | 成人免费福利网站在线看 |