天天看點

走進Web開發

從五月底開始接觸web開發,到現在已經快三個月了.對web開發有了一定的了解.也實作了一些web應用程式.從最初的一個圖書管理系統.到新聞釋出系統,又到現在的教務系統.一路走來.收獲很多.接下來會用幾篇文章,總結自己在這段時間學習到的關于web開發的知識.

在這之前,首先說一下自己的體會.

最初對web程式的印象是強大.一個應用程式,不用安裝,隻要有個浏覽器,你就能幹自己的事了.友善,快捷,幹淨,環保.是以自己特别想做web的程式.

經過幾個項目的鍛煉,逐漸加深了對web開發的認識.

到底什麼是web開發 呢?他和cs開發有那些異同呢?它都用到那些技術.他的工作原理是什麼?

首先看看微軟對它的定義:

Web開發是一個指代網頁或網站編寫過程的廣義術語。網頁使用 HTML、CSS 和 JavaScript編寫。這些頁面可能是類似于文檔的簡單文本和圖形。頁面也可以是互動式的,或顯示變化的資訊。編寫互動式伺服器頁面略微複雜一些,但卻可以實作更豐富的網站。如今的大多數頁面都是互動式的,并提供了購物車、動态可視化甚至複雜的社交網絡等現代線上服務。

通俗的說,web開發就是我們說的做網站.它分為網頁部分,和邏輯部分也就是我們說的前台與背景.前台負責與使用者的互動,顯示資料.用到HTML顯示資料,CSS控制樣式,JS編寫複雜互動.背景編寫處理這些邏輯的程式.可以用C#,java,vb.php等語言.

現在web應用程式已經和我們的生活息息相關,小到我們的部落格,空間.大到大型社交網站如facebook,人人等.更複雜的如電子商務中的C2C,B2B等網站.都給我們帶來了很大的友善.

那麼web開發與我們以前做過的cs開發有什麼差別呢?

C/S結構,即Client/Server(客戶機/伺服器)結構,是大家熟知的軟體系統體系結構,通過将任務合理配置設定到Client端和Server端,降低了系統的通訊開銷,可以充分利用兩端硬體環境的優勢。

B/S結構,即Browser/Server(浏覽器/伺服器)結構,是随着Internet技術的興起,對C/S結構的一種變化或者改進的結構。在這種結構下,使用者界面完全通過WWW浏覽器實作,一部分事務邏輯在前端實作,但是主要事務邏輯在伺服器端實作,形成所謂3-tier(三層架構)結構。B/S結構利用不斷成熟和普及的浏覽器技術實作原來需要複雜專用軟體才能實作的強大功能,并節約了開發成本,是一種全新的軟體系統構造技術。這種結構更成為當今應用軟體的首選體系結構,microsoft.net也是在這樣一種背景下被提出來的架構,但微軟的方案隻是一種構想,要成為現實還需要幾年,而JAVA技術已經是很成熟的應用了。

從根本上說,cs開發更适合開發單機的應用程式,或者比較固定業務邏輯,而且對硬體要求較高的程式.比如:一些應用軟體,如防毒軟體,教學軟體這些與伺服器邏輯互動較少,而且程式與用戶端硬體有密切聯系的程式.

而bs開發趨向于電子商務,社交網絡等這些需要服務端密切配合的軟體.他由于用戶端隻有一個浏覽器,開發友善,使用者體驗簡潔.但是會受到網絡,通信的限制.必須考慮伺服器性能.

總體來說:

由于管理與部署的簡便性,B/S架構成為當今許多資訊系統的首選,然而,使用者是追求好的使用體驗的,大體總結起來,有以下要求:

     (1)漂亮的界面。這點B/S有優勢。

    (2)友善的輸入。比如許多使用者都希望能不用滑鼠就可以錄入資料,或者是通過簡單的點選實作資料的自動填充,在B/S架構下實作起來比較麻煩,AJAX可以在一定程度上解決這個問題。

    (3)閃電般的速度。對于C/S而言,要實作響應速度快,有許多的法子可想,可B/S就不容易了。由于受到浏覽器的限制,用戶端強大的硬體資源幾乎是被閑置的。另外,網絡速度是B/S架構的瓶頸,除非帶寬能有快速的增長,否則,WWW就是WorldWide Wait.

    C/S雖然擁有好的使用者體驗,但它的問題在于開發跨越整個網際網路的分布式系統困難,而且由于需要安裝用戶端,系統更新與元件版本管理就成了一個大問題,此外,不象B/S架構中隻需考慮伺服器端的問題,在C/S架構由于多使用者同時通路伺服器,各元件間的調用和依賴關系複雜,在處理多線程通路共享資源,事務處理等方面必須同時考慮用戶端與伺服器端,吞吐量受到大的限制。是以,C/S多建構于區域網路内,供企業内部使用

補充知識:

一、超文本(hypertext)

      一種全局性的資訊結構,它将文檔中的不同部分通過關鍵字建立連結,使資訊得以用互動方式搜尋。它是超級文本的簡稱。

二、超媒體(hypermedia)

      超媒體是超文本(hypertext)和多媒體在資訊浏覽環境下的結合。它是超級媒體的簡稱。使用者不僅能從一個文本跳到另一個文本,而且可以激活一段聲音,顯示一個圖形,甚至可以播放一段動畫。 Internet采用超文本和超媒體的資訊組織方式,将資訊的連結擴充到整個Internet上。Web就是一種超文本資訊系統,Web的一個主要的概念就是超文本連接配接,它使得文本不再象一本書一樣是固定的線性的。而是可以從一個位置跳到另外的位置。你可以從中擷取更多的資訊。可以轉到别的主題上。想要了解某一個主題的内容隻要在這個主題上點一下,就可以跳轉到包含這一主題的文檔上。正是這種多連接配接性我們才把它稱為Web。

Web的特點:

一、Web是圖形化的和易于導航的(navigate)

      Web 非常流行的一個很重要的原因就在于它可以在一頁上同時顯示色彩豐富的圖形和文本的性能。在Web之前Internet上的資訊隻有文本形式。Web可以提供将圖形、音頻、視訊資訊集合于一體的特性。同時,Web是非常易于導航的,隻需要從一個連接配接跳到另一個連接配接,就可以在各頁各站點之間進行浏覽了。

二、Web與平台無關

      無論你的系統平台是什麼,你都可以通過Internet通路WWW。浏覽WWW對你的系統平台沒有什麼限制。無論從Windows平台、UNIX平台、Macintosh還是别的什麼平台我們都可以通路WWW。對WWW的通路是通過一種叫做浏覽器(browser)的軟體實作的。如Netscape 的Navigator、NCSA的Mosaic、Microsoft的Explorer等。

三、Web是分布式的

      大量的圖形、音頻和視訊資訊會占用相當大的磁盤空間,我們甚至無法預知資訊的多少。對于Web沒有必要把所有資訊都放在一起,資訊可以放在不同的站點上。隻需要在浏覽器中指明這個站點就可以了。使在實體上并不一定在一個站點的資訊在邏輯上一體化,從使用者來看這些資訊是一體的。 Web 是動态的

      最後,由于各Web站點的資訊包含站點本身的資訊,資訊的提供者可以經常對站上的資訊進行更新。如某個協定的發展狀況,公司的廣告等等。一般各資訊站點都盡量保證資訊的時間性。是以Web站點上的資訊是動态的。經常更新的。這一點是由資訊的提供者保證的。

Web動态的特性還表現在Web是互動的。

      Web的互動性首先表現在它的超連接配接上,使用者的浏覽順序和所到站點完全由他自己決定。另外通過FORM的形式可以從伺服器方獲得動态的資訊。使用者通過填寫FORM可以向伺服器送出請求,伺服器可以根據使用者的請求傳回相應資訊。

繼續閱讀