Re: [請益] 請問各位高手開發PHP的問題?

看板PHP作者 (寶貝豬)時間16年前 (2010/01/11 12:01), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串2/2 (看更多)
我採用的原則是分成三層: 1 資料模型(model)層: 1.1 透過sql語法存取關聯式資料庫(以mysql為代表). 1.2 所有sql構句的程式通通放在這一層. 1.3 用物件導向繼承機制來串起sql的條件式(left join, where), 簡化不同model所採用的結構相似的sql query構句的重複性及複雜性. 1.4 model層只能由程式邏輯層存取, 不允許其它任何'管道'存取. 2 程式邏輯(control)層: 2.1 透過model層的物件存取data. 2.2 這一層不允許出現任何一道sql語法. 2.3 屬於這一層的程式都是可直接執行的,透過url or cli, 供外部執行. 2.4 根據組態設定, 負責處理: 權限檢查, session, 以及作業邏輯. 2.5 必要時再切出一層'組態層',透過組態設定盡量做到程式在不同的環境下 可重複使用的目的, 以及簡化設計的重複性. 3 表達(presentation/view)層: 3.1 基本上是以 smarty 的 template 來做. 3.2 這一層只允許看見html/javascript/css這些東西, 不准出現任何php或 sql code. 3.3 由屬於程式邏輯層的程式透過smarty物件來控制. 大致上是這樣. 其實現在很多MVC framework也都是這麼設計. 只是framework 更public, 更具社群支援的優勢, 可以做得更深入更細膩, 比起私人發展自己 在用的framework自然是強得多. 不過雖說 MVC 是個明確的design pattern, 但也不是非得這麼做不可. 有些 堪稱是popular的open source, 其架構簡直稱得上是大雜燴. sql,php,html通 通擠在一起, 個人是蠻懷疑這種結構的維護成本如何down得下來? 有人是說別管這個, 反正發展到一定的規模後就是砍掉重做比較快. 你只要掌 握了設計的精神, 到時候要透過什麼樣的framework或是develop tool kit來 重新開發都不是問題, 只要有人(幫你攤時間),有錢(幫你養人)讓你玩就一定能 夠玩得起來. :P ※ 引述《iloveelva (iloveelva)》之銘言: : 各位在開發PHP 專案裡面 是網頁與程式分離的方式還是一起的方式 : 還有開發工具的選擇 我是用NOTEPAD++ : 另外會使用到物件導向的方式開發網頁嗎?? : 想問問看各位在開發PHP時後的方法和維護效率的方法 : 希望各位指點!! : 剛剛在看MVC和ZEND FRAMEWORK的文章 想說要步要轉換撰寫PHP方式!! : 希望可以達到有效率開發和方便維護的方式!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.75.224.229

01/11 14:30, , 1F
我在思考思考再問你
01/11 14:30, 1F

01/11 18:31, , 2F
您慢慢思考吧,不急. :P
01/11 18:31, 2F

01/11 18:34, , 3F
而且你問,我未必有時間答你.
01/11 18:34, 3F
文章代碼(AID): #1BIgAEmG (PHP)
討論串 (同標題文章)
文章代碼(AID): #1BIgAEmG (PHP)