python的设计模式之MVC模式
生活随笔
收集整理的這篇文章主要介紹了
python的设计模式之MVC模式
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
模型-視圖-控制器模式
關(guān)注點(diǎn)分離(Separation of Concerns,SoC)原則是軟件工程相關(guān)的設(shè)計(jì)原則之一。SoC原則背后的思想是將一個(gè)應(yīng)用切分成不同的部分,每個(gè)部分解決一個(gè)單獨(dú)的關(guān)注點(diǎn)。分層設(shè)計(jì)中的層次(數(shù)據(jù)訪問(wèn)層、業(yè)務(wù)邏輯層和表示層等)即是關(guān)注點(diǎn)的例子。使用SoC原則能簡(jiǎn)化軟件應(yīng)用的開發(fā)和維護(hù)。
?
模型—視圖—控制器(Model-View-Controller,MVC)模式是應(yīng)用到面向?qū)ο缶幊痰腟oc原則。模式的名稱來(lái)自用來(lái)切分軟件應(yīng)用的三個(gè)主要部分,即模型部分、視圖部分和控制器部分。MVC被認(rèn)為是一種架構(gòu)模式而不是一種設(shè)計(jì)模式。架構(gòu)模式與設(shè)計(jì)模式之間的區(qū)別在于前者比后者的范疇更廣。模型是核心的部分,代表著應(yīng)用的信息本源,包含和管理(業(yè)務(wù))邏輯、數(shù)據(jù)、狀態(tài)以及應(yīng)用的規(guī)則。視圖是模型的可視化表現(xiàn)。視圖的例子有,計(jì)算機(jī)圖形用戶界面、計(jì)算機(jī)終端的文本輸出、智能手機(jī)的應(yīng)用圖形界面、PDF文檔、餅圖和柱狀圖等。視圖只是展示數(shù)據(jù),并不處理數(shù)據(jù)。控制器是模型與視圖之間的鏈接/粘附。模型與視圖之間的所有通信都通過(guò)控制器進(jìn)行。
MVC是一個(gè)非常重要的設(shè)計(jì)模式,用于將應(yīng)用組織成三個(gè)部分:模型、視圖和控制器。 每個(gè)部分都有明確的職責(zé)。模型負(fù)責(zé)訪問(wèn)數(shù)據(jù),管理應(yīng)用的狀態(tài)。視圖是模型的外在表現(xiàn)。視圖并非必須是圖形化的;文本輸出也是一種好視圖。控制器是模型與視圖之間的連接。MVC的恰當(dāng)使用能確保最終產(chǎn)出的應(yīng)用易于維護(hù)、易于擴(kuò)展。 MVC模式是應(yīng)用到面向?qū)ο缶幊痰腟oC原則。
Python框架web2py使用MVC作為核心架構(gòu)理念。即使是最簡(jiǎn)單的web2py例子也使用了MVC來(lái)實(shí)現(xiàn)模塊化和可維護(hù)性。Django也是一個(gè)MVC框架,但它使用的名稱是MTV。
轉(zhuǎn)載于:https://www.cnblogs.com/xiaozengzeng/p/10868440.html
總結(jié)
以上是生活随笔為你收集整理的python的设计模式之MVC模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 企业微信的corpsecret在哪里?
- 下一篇: 详细讲解MapReduce二次排序过程