国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

動態網站Web開發PHP、ASP還是ASP.NET(1)

2024-07-10 13:12:41
字體:
來源:轉載
供稿:網友


  這是一個經常被提出的問題,并且它很容易把人們帶入爭論linux還是windows的歧途。這樣的爭論事實上反映出了對于相互競爭的技術要進行并行分析是多么困難的一件事情,而這一難度同時因為開發人員對任何可比較操作系統的不同意見而大大增加。
  
  所以與其繼續參與到這樣的爭論中,我們還不如來看看每一項技術對于特定以及運行環境所表現出的優勢。盡管asp和php的相似程度大于其中任意一種與asp.net的相似程度,我們還是要討論asp.net。原因是開發人員常常將其與asp相混淆,并且在微軟的努力下asp.net的確會在將來完全取代asp。
  
  基本理論——特點概述
  
  php——超文本預處理器(hypertext pre-processor)
  
  php是開放源代碼服務器端的腳本語言,在語法上同c語言非常類似。盡管最初是被設計用于基于linux的apache 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的直接數據庫連接時可以通過mysql提供數據。
  
  asp——動態服務頁面(active server pages)
  
  微軟將asp引入windows nt server 4并將其作為iis web服務器下的動態web應用程序的默認使用平臺。由于它使用vbscript(visual basic語言的一個分支),asp立即被熟悉microsoft ide——visual studio編程的開發人員所追捧。隨著腳本語言的不斷發展,研究人員對asp并沒有引入太多功能使之加入到技術競爭的行列。因此,在php中可以看到的諸如圖像操作等功能沒有集成到asp中。但開發人員仍然可以通過dll文件的形式編寫(或者安裝)第三方com對象來完成類似的工作。在服務器自身允許的情況下,通過這種方式可以編寫代碼來完成任何動作。當然,造成的缺陷是這將導致為了配置這些服務開發人員不得不與桌面系統進行交互——對于人員來說這項功能并不是必須的。
  
  asp的優勢是在企業環境中微軟服務器幾乎無處不在。此外,ms sql server同樣具有廣泛的市場,并且能很好的支持asp(這并不會讓人感到驚奇)。盡管事實上通過odbc可以兼容任何數據來源,但sql server以及文件dsn訪問(file dsn access)可以在代碼一級得到實現。
  
  asp.net
  
  是選擇asp還是php的爭論正在隨著.net的崛起而越來越顯得多余。的確,過去長達數年的爭論將隨著是選擇java還是.net技術(或是兩者)答案的揭曉而終結。asp以及asp.net的唯一聯系是二者都使用vbscript。而單獨就.net而言,它可以使用vbscript以及其他大約20種語言。
  
  對于asp以及php來說,將asp.net看作是另外一種語言的原因是它運行在完全不同的構架之上。前者是翻譯腳本語言,而.net則是經過編譯的framework。這就意味著首先web頁面的運行速度將會有極大提高。同時,源代碼更加安全且更為健壯。此外,asp.net給web編程帶來了新的理念——即“code-behind頁面”的思想。按照code-behind思想,每一個html頁面都是由自身經過編譯的程序化指令進行驅動。因此,html——或稱之為表現層——很大程度上脫離了應用程序的商業邏輯。盡管這樣的分離也可以通過php和asp來實現,但這并非同asp.net一樣屬于自身技術的主要部分。
  
  asp.net的另一好處是它完整的集成了對xml以及web服務的各種支持。對.net而言可以使用非常廣泛的安全以及密碼系統庫,這對于金融機構和企業數據應用程序尤為有用。就缺陷而言,即使是具備豐富經驗的開發人員也會發現使用.net可能把自己搞糊涂。不考慮開發者對于所使用的編程語言的熟悉程度,對于人員來說,在程序范例方面難度的大幅提升可能會成為他們融入asp.net的主要障礙。對asp.net應用程序來說主機同樣是個問題,asp.net并未同asp或者php一樣獲得了主機提供商的廣泛支持,無法在同一級別上展開競爭。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 博客| 肥城市| 武鸣县| 龙州县| 茌平县| 新巴尔虎右旗| 五河县| 枣庄市| 莫力| 肥乡县| 澳门| 高唐县| 白山市| 昌吉市| 天镇县| 富民县| 内丘县| 清原| 信阳市| 蒙阴县| 和硕县| 巩义市| 定兴县| 万年县| 繁昌县| 永州市| 廉江市| 汉源县| 修武县| 永安市| 宁晋县| 北海市| 赤水市| 民县| 武定县| 舒兰市| 射阳县| 苍溪县| 仲巴县| 宽城| 琼中|