Demo

討論

保持飢餓,保持愚笨 (Stay hungry, stay foolish)。 史蒂夫·賈伯斯

公告

本網站已取消討論區的討論方式,如果您有問題請至LINE群行動條碼圖片網址,或Facebook社團

Mambo簡明開發教學(第三章:元件核心架構概論)

  • 羽城君拉
  • 羽城君拉 的個人頭像 Topic Author
  • Offline
  • 管理員
  • 管理員
More
2005-03-21 16:31 #160 來自 羽城君拉
羽城君拉 created the topic: Mambo簡明開發教學(第三章:元件核心架構概論)
這一章超硬(in)
Mambo的元件開發是採用三層式架構(或稱之為N-tier的程式架構)的作法,下面是對這個三層式的架構的概略圖解,當然這不包括你元件內容所用的功能的架構:


區塊的大小代表檔案的大小,上兩層使用者或管理者是看不到的,愈往下方愈接近顯示的介面,Data Layer就是資料庫系統,而Presentation Layer就是網頁瀏覽器。在最上面的Data Access layer,現在大部份是指MySQL的資料表單的一個Database Class handlers,未來Mambo有整合ADODB的計劃,所以以後有可能是一個純文字資料檔案,也有可以是其他的資料庫的表單。

第二層是一個稱之為Application/Business logic layer,官方手冊稱之為作Component Event handler,總之就是專門處理元件功能的函式集中區,許多功能的編寫都在這一區完成,然後呼叫第三層的Application/Business presentation layer(官方手冊上稱之為Component Presentation)來顯示HTML的輸出。

N-tier架構的主要優點,是可以協助開發者設計兼具彈性和良好結構的程式,對於日後的維護都可以很容易找到對應的層級架構。而且對於開發大型的程式有十分好的對應設計決策。

從物件導向(OOP)的開發角度來看,第一層和第三層都是物件導向式的寫法,而第二層是許多函式的集合。比較令人討厭的是,在第三層的寫法是採用minimal PHP風格的寫法(就是把PHP的程式碼嵌在HTML裡的寫法),其實不易維護或開發,這也是在元件開發中比較難上手的一部份。所幸,顯示的方式是有前人所製作的元件可以參考,可以歸類成幾個固定樣式。從這幾種樣式中可以變化成你所需的樣式即可。在下個版本的Mambo中,將採用目前很流行的template技術(和Mambo的樣版無關),現在看起來很亂的第三層就可以獲得改善。

...

Please 登入 to join the conversation.