AndroidDev 板


LINE

越google越懷疑自己到底有沒有懂 架構是android->php->mysql 我在android端寫幾個controller (就是各種SQL,select A、select B WHERE x = y 之類的) 寫一個php在local server做model接收和發送資料給controller view的工作就是把controller丟回來的結果用json解析,表格或條列,顯示給使用者 好處是資料安全和可以各自分開編寫,對大型專案有利 壞處是比較複雜 請問我這樣對mvc的架構算是了解了嗎? --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.73.21.158
※ 文章網址: https://webptt.com/m.aspx?n=bbs/AndroidDev/M.1459732670.A.BC6.html
1F:→ MIM23: 不是這樣吧… 04/04 09:19
是哪裡不正確嗎?
2F:推 ckvir: 我覺得算是mvc了 04/04 11:26
我也覺得阿... 還是其實mvc架構比較像是一個申論題? 大概60%像就好,剩下40%要看帥不帥 ※ 編輯: q374077 (42.72.20.193), 04/04/2016 11:44:25
3F:→ MartinJu: http://tinyurl.com/j7kc2lc MVC只在pres.層 04/04 11:44
4F:→ ssccg: "就是各種SQL",通常SQL只會在model層 04/04 13:42
5F:推 kiwatami: controller 只負責呼叫 model 把撈回來的資料送給 view 04/05 09:30
6F:→ kiwatami: 不應該包含太複雜的邏輯 sql 就更不用說了 完全不能放 04/05 09:30
7F:→ kiwatami: 以你的例子來說 04/05 09:30
8F:→ kiwatami: String str = android.getData(xxx.php); 04/05 09:30
9F:→ kiwatami: android.setText(str); 04/05 09:30
10F:→ kiwatami: controller 裡面只能有這兩行 可以呼叫多個 model 04/05 09:30
11F:→ kiwatami: 再將結果傳給另一個 model 但 model 之間不能呼叫彼此 04/05 09:30
12F:→ kiwatami: 也因為如此才需要 controller 操作整合 04/05 09:30
13F:→ kiwatami: 就字面上的意義來說 就是控制器 控制資料處理流程 04/05 09:30
14F:→ kiwatami: 以及資料間的交換 controller 寫得好 才表示真的懂 MVC 04/05 09:30
所以以資安角度 我現在是SQL放在User端的controller,也就等於沒有解決資料安全的問題 把SQL放在DB端的model,用controller呼叫才解決安全的問題,mvc才真正有運作囉? ※ 編輯: q374077 (114.136.175.69), 04/05/2016 15:26:27
15F:推 sean0430: 以我的理解是Android有自己的MVC,MVP或MVVM..等架構,後 04/05 17:18
16F:→ sean0430: 端有自己的MC架構(不一定有V) 04/05 17:18
17F:推 kiwatami: 資安是資訊安全 不管放在哪裡都跟資安沒關係 04/05 20:48
18F:→ kiwatami: 當然如果你放在 js 內就有關係了 04/05 20:48
19F:→ kiwatami: 以 SQL Injection 來說 是要在使用參數產生 sql 語法前 04/05 20:48
20F:→ kiwatami: 處理參數的內容 避免產生問題 例如雙引號 04/05 20:48
21F:→ kiwatami: MVC的重點在於不論你今天是要做 web, client-server 04/05 20:48
22F:→ kiwatami: 還是單純的 API,要更改的部分只有 controller 跟 view 04/05 20:48
23F:→ kiwatami: model 的部分可以說是幾乎不用修改的 04/05 20:48
24F:→ kiwatami: 只要把原本吐給 template 的 controller 改成吐 json 04/05 20:48
25F:→ kiwatami: 就變成 api 反之亦然 跟 model 沒有什麼關係 04/05 20:48
26F:→ kiwatami: 這就是 MVC 的其中一個目的 因此你再想想 04/05 20:48
27F:→ kiwatami: 把 sql 寫在 controller 內 當你需要使用相同資料 04/05 20:48
28F:→ kiwatami: 吐給不同目標時 會不會需要重新寫一次 sql? 04/05 20:48
29F:→ kiwatami: 因此在學 MVC 時可以不斷反問自己 這樣做的話 04/05 20:48
30F:→ kiwatami: 未來是不是可以很輕鬆的遷移程式碼 04/05 20:48
31F:→ kiwatami: 如果不行 那可能就是不正確的 設計 04/05 20:48
32F:→ kiwatami: 要注意能夠互相聯絡的只有 controller 04/05 20:48
33F:→ kiwatami: Model 間是彼此獨立的 避免未來修改被影響到 04/05 20:48
34F:→ kiwatami: 例如讀檔案 原本寫成在一個 model 呼叫讀取檔案 model 04/05 20:48
35F:→ kiwatami: 之後再解析內容取得資料 如果資料來源從電腦改成網路 04/05 20:48
36F:→ kiwatami: 那這個 model 就廢了 反之如果是從 controller 呼叫 04/05 20:48
37F:→ kiwatami: 讀取資料的 model 再傳給資料解析的 model 04/05 20:48
38F:→ kiwatami: 這樣不管資料來源怎麼改 資料解析的 model 都不用修改 04/05 20:48
39F:→ kiwatami: 因此不斷的反問自己 當環境改變時是不是可以順利轉移 04/05 20:48
40F:→ kiwatami: 這樣一來就可以慢慢上手了 04/05 20:48
感謝k大! 這真的很煩惱~k大的問題我的答案居然都是"是"... 不同目標要重寫sql-->是 很輕鬆遷移程式碼-->是 互相聯絡的只有controller-->是 model間互相獨立-->是 資料來源從電腦改成遠端model就廢了-->是 因為我想法是mysql和sqlite語法還是有些不同,所以把sql寫在controller 還可以讓local DB和remote DB互相溝通...要用的時候只是呼叫不同api就好說... 恩~~~怎麼會這樣勒... 我再去找找看有沒有用在android-php-mysql的實例 可能是我對controller的定義有誤... ※ 編輯: q374077 (223.136.96.188), 04/06/2016 17:01:33







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BuyTogether站內搜尋

TOP