標籤:
MVC一種軟體設計模式
MVC全名是 Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟體設計典範,用一種商務邏輯、資料、介面 顯示分離的方法組織代碼,將商務邏輯聚集到一個組件裡面,在改進和個人化定製介面及使用者互動的同時,不需要重新編寫商務邏輯。
MVC被獨特的發展起來用於 映射傳統的輸入、處理和輸出功能在一個邏輯的圖形化使用者介面的結構中。
____________________________________________________________________________________________________________________
Smarty是一個使用PHP寫出來的模板引擎,是目前業界最著名的PHP模板引擎之一。它分離了邏輯代碼和外在的內容,提供了一種易於管理和使用的方法,用來將原本與HTML代碼混雜在一起PHP代碼邏輯分離。簡單的講,目的就是要使PHP程式員同前端人員分離,使程式員改變程式的邏輯內容不會影響到前端人員的頁面設計,前端人員重新修改頁面不會影響到程式的程式邏輯,這在多人合作的項目中顯的尤為重要。1. 速度:採用Smarty編寫的程式可以獲得最大速度的提高,這一點是相對於其它的模板引擎技術而言的。 2. 編譯型:採用Smarty編寫的程式在運行時要編譯成一個非模板技術的PHP檔案,這個檔案採用了PHP與HTML混合的方式,在下一次訪問模板時將WEB 請求直接轉換到這個檔案中,而不再進行模板重新編譯(在來源程式沒有改動的情況下) 3. 緩衝技術:Smarty選用的一種緩衝技術,它可以將使用者最終看到的HTML檔案快取成一個靜態HTML頁,當設定Smarty的cache屬性為true時,在Smarty設定的cachetime期內將使用者的WEB請求直接轉換到這個靜態HTML檔案中來,這相當於調用一個靜態HTML檔案。 4. 外掛程式技術:Smarty可以自訂外掛程式。外掛程式實際就是一些自訂的函數。 5. 模板中可以使用if/elseif/else/endif。在模板檔案使用判斷語句可以非常方便的對模板進行格式重排。 不適合使用Smarty的地方需要即時更新的內容。例如像股票顯示,它需要經常對資料進行更新,這類型的程式使用smarty會使模板處理速度變慢。小項目。小項目因為項目簡單而美工與程式員兼於一人的項目,使用Smarty會在一定程度上喪失PHP開發迅速的優點。(PS:不過為了整個項目的規範,請大家嘗試去使用模板引擎。其實習慣了,開發速度會更加快,以上是沒有用習慣模板引擎的開發人員遇到的問題)
MVC架構 與Smarty