Re: [請益] 想理解MVC(使用CodeIgniter)
※ 引述《markmcm (Markmcm)》之銘言:
: 可是問題來了,我要設計的時候總不知道該從哪方開始設計。
: 這個三角圖沒有說 C 對 V 通常是 1 對多的關係
: 也沒有說一個 C 通常要對幾個 M
: 我要怎樣才知道何時該開第二個 Model
: 何時會需要多個 Controller
: 什麼時候一個 Controller 方法會對應多個 View
分享一下最近練習CI的感想,我用CI的時候還不會OO,只會傳統procedure式的寫法,
,而且我以前碰最多的語言是組語,所以應該算是白紙一張吧?(遮臉)
我目前的在CI上開發的順序是,先把view做好,然後依照我的功能,決定有幾個
controller,controller在寫的時候,再依照需要開專屬的model。
例如:留言板功能。
工作順序:
1. 準備網頁畫面。
2. 決定功能。
3. 撰寫程式。
1的部份就不多說了,看個人美感跟喜好。
2的話就是拆解功能了,例如:
1. 留言顯示
2. 留言編輯
3. 留言刪除
4. 留言回覆引用
5. 使用者註冊
6. 使用者登入登出
7. 使用者設定資料
像以上幾個功能,就可以分出兩個主controller,一個是留言用的,一個是使用者。
所以由上面來看,使用者註冊、登入、設定個人資料各需要一個view。
這樣使用者這個controller就需要至少3個view,一對多的狀況就跑出來了。
至於model的部份,使用者跟留言的model應該有很大的不同,畢竟功能需求完全不一樣。
所以應該也略能解釋model的使用時機。
: 感覺要開發中等大小的程式時,沒有個開發的基準點。
: 也許是我只瞭解OO,所以感覺要定義物件比較簡單,
: 但是像是 Model 這種東西要定義感覺有些困難。
model的話,我就純粹當他是個function包來用而已... XD
: 重點就是我知道 MVC 是什麼,但是我不知道其設計的準則及方法。
我剛開始寫的時候,也有同樣的困擾,不過後來改成先做view後
再決定功能,就沒這困擾了。
: 另外一個小問題是,一個 Controller 只能 Scaffolding 到一個 table
: 請問這有原因嗎?(為何不能一個方法就scaffold到一個 table)
Scaffolding不曉得是幹麼的,不過2.0不是要拔掉了嗎?不如趁現在就當作
沒這玩意吧!XDD
: 我覺得不知道這原因代表我還不瞭解CI的使用方法。
: 要是我想設計一個使用者能註冊且登入,然後貼文評論的程式,
: 通常各位會採哪種方式跟順序作設計呢?
: 謝謝閱讀:D
程式新手分享一點粗淺心得,希望對你有點幫助!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.35.243
推
12/24 15:38, , 1F
12/24 15:38, 1F
推
12/25 00:41, , 2F
12/25 00:41, 2F
→
12/25 00:41, , 3F
12/25 00:41, 3F
→
12/25 04:31, , 4F
12/25 04:31, 4F
→
12/25 04:33, , 5F
12/25 04:33, 5F
→
12/25 04:34, , 6F
12/25 04:34, 6F
→
12/25 04:35, , 7F
12/25 04:35, 7F
→
12/25 04:36, , 8F
12/25 04:36, 8F
→
12/25 04:37, , 9F
12/25 04:37, 9F
→
12/25 04:47, , 10F
12/25 04:47, 10F
→
12/25 04:48, , 11F
12/25 04:48, 11F
→
12/25 04:48, , 12F
12/25 04:48, 12F
推
12/27 21:39, , 13F
12/27 21:39, 13F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):