官术网_书友最值得收藏!

1.1 動態Web概述

1.1.1 靜態Web與動態Web

被譽為“互聯網之父”的英國計算機科學家蒂姆·伯納斯·李(Tim Berners-Lee)在20世紀90年代初發明了萬維網(World Wide Web,WWW),并成功開發出世界上第一個網頁瀏覽器和第一個網頁服務器,宣告了網站的誕生。隨即,互聯網迅速向大眾普及。目前,全球互聯網網站數量已達數十億個。

一個網站由多個網頁構成。這些網頁可以各自呈現其獨立的信息,具有特定的功能,同時也可以相互關聯形成一個整體。從網頁的內容是否可以通過動態交互生成和變化的角度來看,網頁可以分為靜態網頁(靜態Web)和動態網頁(動態Web)兩大類,它們各有特點。

靜態Web制作完成后,頁面上顯示的內容和格式是固定不變的,如果需要改變,就必須去修改頁面代碼。靜態Web主要由超文本標記語言(Hyper Text Mark-up Language,HTML)制作而成,網頁的文件名以.htm、.html、.shtml等為擴展名。靜態Web是網站建設的基礎。需要注意的是,靜態Web上可以出現各種動態的效果,如動畫、滾動文字等,但這些只是頁面內容在視覺上的“動態效果”,與后面介紹的動態Web是不同的概念。早期的網站包含的網頁基本上都是靜態Web。靜態Web的運行速度快,內容相對穩定,易被搜索引擎檢索,但在功能方面有較大的局限性,頁面內容更新起來比較麻煩,所以一般對于功能簡單、內容更新少的網頁,我們采用靜態Web的方式制作。

動態Web是相對于靜態Web而言的,指其網頁內容可以根據不同的情況而動態變更。動態Web的網頁文件在基本HTML的基礎上,加入了由Java、C#、PHP等程序語言編寫的代碼,用于實現網站所需的特定功能。這些程序代碼可以使用戶和網頁之間進行交互,網頁輸出將根據客戶瀏覽器的不同請求而動態產生不同的結果。動態網站通常基于數據庫技術構建,融合了程序設計語言、數據庫編程技術等,可以實現強大的網站功能,同時大大降低了網站維護的工作量。常見的購物車、論壇、電子圖書館、網上投票等都是由動態Web實現的。動態Web的擴展名通常有.php、.jsp、.aspx、.asp、.perl、.cgi等,這與網頁所采用的開發技術有關,采用不同技術制作的動態Web,其擴展名也有所不同。

網站是采用動態Web還是靜態Web主要取決于網站的功能需求和網站內容的多少,如果網站功能比較簡單,內容更新量不是很大,采用純靜態Web的方式會更簡單,反之則要采用動態Web技術來實現。純粹由靜態Web構成的網站稱為靜態網站,包含動態Web的網站稱為動態網站。動態網站也可以采用靜動結合的原則,在適合采用動態Web的地方用動態Web,如果有必要使用靜態Web,則可以考慮用靜態Web的方法來實現。在同一個網站上,動態Web內容和靜態Web內容同時存在也是很常見的事情。

1.1.2 動態Web訪問流程

動態Web不能直接由瀏覽器解釋輸出,必須經過服務器的處理,然后傳送給瀏覽器,其訪問流程如圖1-1所示。

圖1-1 動態Web訪問流程

首先,用戶在瀏覽器地址欄中輸入要訪問的網頁地址,瀏覽器即向網址對應的Web服務器發出頁面請求。然后,Web服務器接收到該請求后,根據文件名查找相應的網頁文件,調用專門的處理程序對代碼進行解析,如果網頁文件中還有需要操作數據庫的代碼,則訪問數據庫服務器并返回交互數據。最后,Web服務器將動態Web解釋為一個靜態頁面發送給瀏覽器,以呈現給用戶。

1.1.3 常見的動態Web開發技術

早期的動態Web開發主要采用公用網關接口(Common Gateway Interface,CGI)技術,可以使用不同的編程語言,如Visual Basic、Delphi或C/C++等。雖然CGI技術已經成熟且功能強大,但由于其編程困難、效率低下、修改復雜,已經被新技術所取代。目前最常見的動態Web開發技術有PHP、JSP和ASP.NET這3種。

1.PHP

PHP(Hypertext Preprocessor,超文本預處理器)是一種通用開源腳本語言,主要適用于Web開發領域。PHP于1995年由拉斯姆斯·勒多夫(Rasmus Lerdorf)創建,最初是為了維護個人網頁而制作的一個簡單的用Perl語言編寫的程序,后來又用C語言重新編寫。PHP的語法借鑒了C、Java、Perl等語言,它將程序嵌入HTML文檔中去執行,執行效率高。PHP也可以在編譯優化后運行,使代碼運行得更快。

PHP跨平臺性強,可以運行在UNIX、Linux、Windows、Mac OS、Android等平臺,同時具有免費和代碼開源的特點,非常適合開發中小型的Web應用。使用PHP開發的速度比較快,而且由于所有的軟件都是免費的,可以減少成本投入。關于PHP的詳細內容將在下一節重點講述。

2.JSP

JSP(Java Server Pages,Java服務器頁面)是由Sun Microsystems公司于1999年6月推出的動態Web開發技術,是在傳統的HTML網頁文件中插入Java程序段(Scriptlet)和JSP標記(Tag)形成的JSP文件。JSP基于Java Servlet和整個Java體系,實現了HTML語法中的Java擴展。

JSP將網頁邏輯與網頁設計的顯示分離,支持可重用的基于組件的設計,使基于Web的應用程序開發變得迅速和容易。JSP具備了Java技術的簡單易用、完全面向對象且安全可靠的特點。用JSP技術開發的Web應用是跨平臺的,具有平臺無關性,既能在Linux中運行,也能在其他操作系統中運行。

3.ASP.NET

ASP.NET是微軟公司于2002年推出的新一代綜合性平臺架構——Mricrosoft.NET框架的一部分。它是一個統一的Web開發模型,提供了多種服務,使開發人員可以用盡可能少的代碼來構建功能強大的Web應用。ASP.NET可以建立包括從小型的個人網站到大型的企業級Web應用等各種類型的項目,具有高效、強大、安全可靠的特點。開發人員可以選用Visual Basic、C#、JScript.NET和J#等多種程序語言來編寫應用。

用ASP.NET開發的Web應用只能運行于Windows的Web服務器IIS(Internet Information Server,互聯網信息服務)之上,具有平臺的局限性。

主站蜘蛛池模板: 广平县| 泽州县| 平舆县| 房山区| 察隅县| 会同县| 湖口县| 浦江县| 凯里市| 远安县| 永昌县| 重庆市| 博兴县| 邹平县| 易门县| 沂南县| 红桥区| 莎车县| 大庆市| 焦作市| 宜昌市| 巨鹿县| 桐庐县| 长武县| 太谷县| 龙江县| 南澳县| 普兰县| 乐亭县| 万荣县| 东港市| 黄石市| 治县。| 汕头市| 灵川县| 张家川| 屯门区| 新闻| 常州市| 上蔡县| 沙雅县|