[請益] 為什麼要把所有功能寫在同一頁

看板PHP作者 (追)時間16年前 (2010/01/23 07:34), 編輯推噓11(11031)
留言42則, 12人參與, 最新討論串1/3 (看更多)
小弟對於PHP算是個不算新的新手, 要我寫出一個資訊系統可以, 但是沒有熟到某功能直覺反應有哪些 func 可以達成 囧a ===================== 本文重點分隔線 ==================== 小弟想請教就是.. 為什麼很多人寫php網站很喜歡把所有功能寫在同一支檔案? 例如 user 相關的新增 修改 刪除 查詢 都寫在 user.php 裡, 然後靠 switch 去判斷要跑那邊? 這樣做有什麼好處嗎? 之前我在某y入口網站的時候, 曾經被派去支援php team, (個人是屬於.net 和 java team) 那時候只是把 php 引入 template, 然後把標記的地方replace掉, 這個我大概知道是要把程式和 html 抽離, 但是不知道什麼時候開始, 碰到越來越多把所有功能寫在同一支檔案再去引入需要的template的寫法了... 還是說這是使用某開發工具開發後產生的方式? (我自己寫 php 是dreamwaver 或 notepad 直接寫,沒在用其他工具) 個人是不太喜歡把同一支程式搞得太複雜, 遇到這種情況還蠻不習慣的 0rz 所以蠻好奇這麼作有什麼好處或優點的, 其實這個問題我已經碰過很多次了, 而且都是在php專案中遇到 @@ 只是一直沒實際去請教一下前輩, 最近又接到一個php的修改和維護案, 又遇到一樣的狀況,忍不住就跑來請教各位前輩了XD 先謝過 <(ˍ.ˍ)> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.16.69

01/23 10:17, , 1F
MVC的Control吧? 寫得漂亮的話好處很多,一言難盡XD
01/23 10:17, 1F

01/23 12:42, , 2F
老實說 我也想知道
01/23 12:42, 2F

01/23 13:21, , 3F
修改方便吧
01/23 13:21, 3F

01/23 15:57, , 4F
我第一個想到的是 後續接手的人易了解整個檔案分佈
01/23 15:57, 4F

01/23 16:02, , 5F
簡單講,那是以前(至少10年~20年前)所流行過的design pattern
01/23 16:02, 5F

01/23 16:03, , 6F
,它的出現有時代意義. 現在會有心想要回頭考古的人只怕不多.
01/23 16:03, 6F

01/23 16:04, , 7F
那個時代的開發者,沿用那個時代曾經流行過的design pattern
01/23 16:04, 7F

01/23 16:04, , 8F
到現代來開發web-based app,所呈現的風格就如你現在所見.
01/23 16:04, 8F

01/23 16:11, , 9F
跟軟體工程的開發流程有關嗎?
01/23 16:11, 9F

01/23 16:26, , 10F
b大這樣一講 好像我碰到的案子都很老 囧
01/23 16:26, 10F

01/23 16:26, , 11F
其實我遇到的都算是很年輕的案子 應該不至於超過10年吧0rz
01/23 16:26, 11F

01/23 16:28, , 12F
例如線上聊天室 視訊網站 應該沒那麼老XDz
01/23 16:28, 12F
推文太麻煩 補充一下好了, 我會以為是目前流行的寫法是因為, 我有一個客戶,他把網站拿去請某專業公司作 SEO, 然後可能是只改title 和 meta 的效果不好, 該公司把整個程式架構都改了, 例如 把 news.php 等相關的檔案 搬到 /news/下面這樣 (我知道這個網路流傳這樣有助於提高排名) 然後 他們還順便把整個程式都集中到同一支檔案,就像上面說的那樣 @@ 感覺目前這樣做的開發者還是挺多低說 ※ 編輯: iceyang 來自: 122.117.16.69 (01/23 16:44)

01/23 17:18, , 13F
在以前流行用perl寫cgi的時候,很流行這種寫法
01/23 17:18, 13F

01/23 17:19, , 14F
不過大概七八年前看到的文章吧..裡面有提到php比較不適合
01/23 17:19, 14F

01/23 17:19, , 15F
這樣的寫法,我也不清楚,畢竟是很久以前看到的了
01/23 17:19, 15F

01/23 17:20, , 16F
那時候還有一大篇討論串在討論這個
01/23 17:20, 16F

01/23 18:42, , 17F
因為a.htm a.php b.htm b.php c.htm c.php 很恐怖
01/23 18:42, 17F

01/23 18:43, , 18F
而且共用的code會很多 用include 如過要改資料夾架構
01/23 18:43, 18F

01/23 18:43, , 19F
會死人
01/23 18:43, 19F

01/23 18:43, , 20F
而且很多時候 那些動作會有共同的步驟 放一起方面切模組
01/23 18:43, 20F

01/23 18:44, , 21F
譬如說add 可以作成create_blank+edit 這樣
01/23 18:44, 21F

01/23 21:00, , 22F
方便cache?
01/23 21:00, 22F

01/23 22:05, , 23F
我原本試著要說明,但思緒實在是太亂,很難理出一個頭緒. :P
01/23 22:05, 23F

01/23 22:07, , 24F
總之,就接受事實吧.簡單講php入門很容易,包容性也很大,所以
01/23 22:07, 24F

01/23 22:08, , 25F
融入從過去到現在至少20年間距不同的程式設計背景的風格在
01/23 22:08, 25F

01/23 22:09, , 26F
不同的系統架構上.
01/23 22:09, 26F

01/23 22:10, , 27F
我早期用c,後來用c++,vb6,後來網站時代來臨開始又用asp,後來
01/23 22:10, 27F

01/23 22:11, , 28F
又用php,像我這樣經歷的程設師不勝枚舉.從以往到現在的程設
01/23 22:11, 28F

01/23 22:12, , 29F
風格會因人因時代而異.
01/23 22:12, 29F

01/23 22:14, , 30F
因為php實在是太'好'用了.所以各種不同經歷及背景的人很容易
01/23 22:14, 30F

01/23 22:15, , 31F
用它寫出一些東西來.而這些不同經歷不同背景的人所寫出來的
01/23 22:15, 31F

01/23 22:15, , 32F
各種作品就呈現各種不同的風格.
01/23 22:15, 32F

01/23 22:21, , 33F
不過若就這個個案來看,我覺得不同的功能拆成不同的檔案來維
01/23 22:21, 33F

01/23 22:21, , 34F
護會比統統包在一起來得好.
01/23 22:21, 34F

01/23 22:51, , 35F
不太懂這個問題 一個.php只放一個function會比較好嗎?
01/23 22:51, 35F

01/23 23:05, , 36F
應該是說一"組"相關功能的函數,放在同一個.php檔裡
01/23 23:05, 36F

01/23 23:56, , 37F
對於superpai的問題,我稍後回一篇文來說明.
01/23 23:56, 37F

01/24 04:51, , 38F
superpai誤會我的意思囉 請看我下篇的推文@@
01/24 04:51, 38F

01/24 04:54, , 39F
當然我不否認 這種寫法 檔案數量看起來真的很"安心" XD
01/24 04:54, 39F

01/24 05:00, , 40F
例如 buganini 大說的add 可以作成create_blank+edit
01/24 05:00, 40F

01/24 05:02, , 41F
習慣中我只是 call兩個menthod ..語言障礙 很難表達 囧a
01/24 05:02, 41F

01/24 05:07, , 42F
程序導向和物件導向的思考模式不同..這樣不知道對不對 0rz
01/24 05:07, 42F
文章代碼(AID): #1BMZNmKU (PHP)
文章代碼(AID): #1BMZNmKU (PHP)