最近幫別組插花的專題,題目是完成一個web-app程式,
所以我稍微研究了一下常用的PHP MVC架構的Framework

 

當初學校內的系統程式發展組的工程師指定了兩套MVC Framework,
要我們回去查資料,
分別是CakePHPCodeIgniter

兩邊都稍微看過之後,我原先是比較想研究CakePHP,
只是CakePHP的文件並不是十分友善,看了之後還是不太能理解CakePHP的架構,
又打聽到CakePHP慘不忍睹的效能,所以最後還是朝向CodeIgniter的方向研究了

 CodeIgniter與其說簡單明瞭,不如說陽春Orz
整個架構提供的真的就只是最基礎的MVC,以及少許必要的操作函數,
剩下的東西都要自己動手,
不過優點是學習曲線相對於Cakephp,上手難度低上了許多,
網站上有一個20分鐘寫完一個Blog的範例影片,
看完之後就能大致上體會CodeIgniter的核心邏輯,

 MVC的架構按照字面上的意義解釋,就是Model View Controller,


Model是負責生出資料,以一個Blog來說,就相當於存放文章的資料庫,
在一個MVC的架構中,Model負責從資料庫中取出資料,交給Controller使用,

View則是接受Controller的指揮,產生頁面,
大多數的情況是View上面會有許多模板用的參數,Controller會完成參數填空,

Controller就是負責從Model接收資料,並且控制View的輸出,
相當於整個程式的核心部位

當然,MVC只是一個程式開發上的概念,
如何實做出這概念還是取決於Framework本身,
以CodeIgniter來說,他的Model概念幾乎就整合在Controller上面,
或許有時間的話,等我摸熟CodeIgniter,我會再來發篇介紹文

smartPG 發表在 痞客邦 PIXNET 留言(1) 人氣()


留言列表 (1)

發表留言
  • kiang
  • CakePHP 也沒那麼難啦...

    CakePHP 的效能沒那麼糟、用起來也沒那麼複雜,跟大部分的 Framework 都得花差不多的時間學習。 :)
  • 嗯,我覺得應該不是CakePHP太難,是CodeIgniter相對簡單
    所以我也還在掙扎是不是要先把CI學起來,還是應該學CakePHP
    畢竟CakePHP使用的人還是比較多的

    smartPG 於 2010/03/29 21:41 回覆