Android與MVC設計模式

來源:互聯網
上載者:User

標籤:block   .com   try   targe   通過   工作   架構   關心   ges   

寫在前面,之前做過一段時間移動開發,後來因為工作原因擱淺了,最新重新拿起Android權威編程指南學習,順道做個學習筆記。

首先呢,我想說無論是電腦科班出身還是培訓班出身,都聽說過高內聚低耦合以及MVC這兩個詞。MVC模式就是為瞭解決軟體工程過程中內聚與耦合的關係。(維基中查看內聚 耦合的定義)

MVC模式(Model–view–controller)是軟體工程中的一種軟體架構模式,把軟體系統分為三個基本部分:模型(Model)、視圖(View)和控制器(Controller)。

MVC模式最早由Trygve Reenskaug在1978年提出[1],施樂帕羅奧多研究中心(Xerox PARC)在20世紀80年代為程式語言Smalltalk發明的一種軟體架構。MVC模式的目的是實現一種動態程式設計,使後續對程式的修改和擴充簡化,並且使程式某一部分的重複利用成為可能。除此之外,此模式通過對複雜度的簡化,使程式結構更加直觀。軟體系統通過對自身基本部分分離的同時也賦予了各個基本部分應有的功能。專業人員可以通過自身的專長分組:

  • 控制器(Controller)- 負責轉寄請求,對請求進行處理。
  • 視圖(View) - 介面設計人員進行圖形介面設計。
  • 模型(Model) - 程式員編寫程式應有的功能(實現演算法等等)、資料庫專家進行資料管理和資料庫設計(可以實現具體的功能)。

 

  • 模型(Model) 用於封裝與應用程式的商務邏輯相關的資料以及對資料的處理方法。“ Model ”有對資料直接存取的權力,例如對資料庫的訪問。“Model”不依賴“View”和“Controller”,也就是說, Model 不關心它會被如何顯示或是如何被操作。但是 Model 中資料的變化一般會通過一種重新整理機制被公布。為了實現這種機制,那些用於監視此 Model 的 View 必須事先在此 Model 上註冊,從而,View 可以瞭解在資料 Model 上發生的改變。
  • 視圖(View)能夠實現資料有目的的顯示(理論上,這不是必需的)。在 View 中一般沒有程式上的邏輯。為了實現 View 上的重新整理功能,View 需要訪問它監視的資料模型(Model),因此應該事先在被它監視的資料那裡註冊。
  • 控制器(Controller)起到不同層面間的組織作用,用於控制應用程式的流程。它處理事件並作出響應。“事件”包括使用者的行為和資料 Model 上的改變。

 

  在Android應用開發中,就是基於最基礎的MVC架構進行設計。

    是Android中MVC架構基本模式

  • 模型Object Storage Service著應用的資料和商務邏輯,為儲存和管理應用資料。
  • 控制器是視圖對象和模型對象的聯絡紐帶,管理著模型對象和視圖對象的資料流動,控制著諸如觸發事件之類的響應事件。
  • 視圖對象就是使用者感受到的介面邏輯。

  Android應用設計基礎就是MVC架構,雖然嚴格來說Activity也不簡單的充當controller的角色,以及目前設計模式很多,如mvp,mvvm等但萬變不離其宗。掌握基礎的mvc架構能讓你更快的接觸最新的設計思路和方法,例如降低開發複雜度,提高代碼的複用率等等之類。

 

Android與MVC設計模式

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.