建立網站-從分層架構開始

ASP.NET的入門者由資料控制項開始接觸資料庫動態網頁的開發,也因此能否跨越初學門檻,進階成為專業的網站開發人員,學會透過分層的方式建立網站,就成了一個非常重要的分水嶺 ...
** 感謝大家支持,這本書「ASP.NET 商業級資料庫網站開發實務」竟然再刷了,為了鼓勵大家一起努力,並慶祝再刷,會有一小波的回饋,請大家繼續鎖定我的BLOG…

 

** 感謝大家支持,這本書「ASP.NET 商業級資料庫網站開發實務」竟然再刷了,沒想到深耕技術的ASP.NET開發人員且願意買書的還是大有人在啊…

**為了鼓勵大家一起努力,並慶祝再刷,會有一小波的回饋,請大家繼續鎖定我的BLOG…

網站是相當鬆散的架構,隨便你想怎麼設計都行,基本上只要有一個網頁檔案就可以建立一個網站,不過,一般的商業網站都相當複雜,除了網頁還包含儲存管理資料的資料庫系統,在實際的網站開發過程當中,我們通常不可能一個腸子通到底,讓網頁直接便與底層資料庫進行溝通,取而代之的是建立分層架構來實踐所需的功能。

ASP.NET的入門者由資料控制項開始接觸資料庫動態網頁的開發,也因此能否跨越初學門檻,進階成為專業的網站開發人員,學會透過分層的方式建立網站,就成了一個非常重要的分水嶺。

分層架構的實作方式相當多,最普遍且單純的方式,就是直接建立資料與邏輯類別來架構整個系統,有了相關的經驗,未來可以再進一步學習各種分層設計的模型,包含ASP.NET最新支援的MVC架構。

好了,這就是為什麼我想要寫「ASP.NET 商業級資料庫網站開發實務」這本書的原因(當然想要賺大錢是最主要的理由…):協助已有基礎的ASP.NET開發人員進一步過渡到實作的階段。

前一篇文章,我釋出了第一節「滑鼠設定的神話」,現在,這裏從第二節「建立網站-從分層架構開始」的第一小節「關於網站架構」開始,先來看看網站的架構…

要從那裏開始ASP.NET網站的建構作業,這是一個ASP.NET初階開發人員經常問的一個問題,建立一個能夠上線運作的網站系統,需要瞭解的東西很多,同時亦牽涉各種不同的技術細節,但是最重要的,根本的問題在於網站的組成架構,不清楚網站的組成,再多的片段知識,都沒有辦法讓你有足夠的能力建立符合需求的網站系統。基於這個理由,我們從網站的架構開始,談談從何處開始網站的建立工作。

先看看以下的圖示,這是一個非常典型的、架構於伺服器的資料庫網站系統:



這個網站要能夠運作,必須提供兩個主要部份,呈現視覺化介面的網頁檔案與負責資料庫維護操作的邏輯程式-中間層元件,同時適當的將這兩個部份串連起來,如下圖:



當你開始決定設計一個網站的時候,上述兩個部份必須預先釐清並且完成設設計,相關的要點也是構成本書各大章節的主要內容,我們從這裏開始,探討如何建立一個完整的網站,進一步的實作細節,後續章節將作進一步探討。

中間層元件負責底層資料來源與前端網頁的溝通,它存在的主要目在於實作網站分層架構的建立,將資料存取功能與邏輯程式碼,從展示介面層抽離出來,提供系統設計的彈性。

所有的程式碼以類別物件為單位,封裝於各種類別檔案,再經過編譯成為可被引用的程式功能元件。網頁檔案包含了各種形式的網頁,由ASP.NET與HTML標籤所組成,透過中間層元件的引用,對資料庫內容資料進行存取維護等操作,並且提供視覺化介面,達到使用者與資料庫互動的目的。

瞭解初步的架構之後,接下來我們就可以進一步針對各個部份作處理,簡單來說,在這個基礎之下,網站至少可以切割成為三個部份,分別是提供視覺化介面的網頁檔案,負責串接使用者與資料庫系統的中間層元件與負責提供資料來源的資料庫系統,如下圖:



這是最典型的多層式架構,也是一般小型系統所採用的分層架構,每一層負責處理不同型態的網站功能,中間層針對資料來源執行其中資料的存取操作,展現層則是提供視覺化介面,由各種視覺化元素所組成,包含資料控制項的配置,網頁的巡覽系統等等,以網頁的型態進行呈現,然後經由中間層與資料來源進行互動。


下一次,我們進一步來看看,各層的細節。