android学习总结---MVC设计模式(一)

来源:互联网 发布:淘宝已买到宝贝提取器 编辑:程序博客网 时间:2024/06/07 16:37

MVC设计模式简述

  • MVC设计模式简述
    • MVC设计ModelViewController
    • 设计模式不止一种但是基础最重要

MVC设计(Model,View,Controller)

一个应用程序是由众多纷繁的代码组成的。就像构架一个公司一样,如果没有一套可以套用的架构模式,面对头绪纷繁的人员事物,肯定是没有办法将他们组织起来的。

MVC实际上就是提供了一套组织代码的有效设计方法。它将程序分成了三大部分,也可以将他们想象成三个箱子里面长着不同作用的程序:

  • 模型(Model)箱子:装的是应用数据和业务逻辑。存在的目的就是存储和管理应用数据。(注意管理这层意思也很重要,不仅仅是存了数据,还存了数据应该怎么用的指南)

  • 视图(View)箱子:这个是用来提供数据交互的。它以视图的形式提供给了用户(User)程序的数据和逻辑,同时User可以通过View反馈回来相应的数据(需求,动作,输入的信息等等)

  • 控件(Controller)箱子:view和model是不能直接交互的(这个是精简设计的精髓),所以需要通过controller来担当桥梁和纽带的作用,一方面,controller将用户的需求data发送给model获取用户感兴趣的数据,另一方面,将变化后的model数据分配给正确的view从而更新view。

    MVC

设计模式不止一种但是基础最重要

虽然时代在进步,各式各样的设计模式也层出不穷,但是千变万化始于基础。

MVC毕竟是1970年代的产物,随着时代的进步现在会有很多更先进的架构模式。在实际的编程过程中,譬如controller的编译,或多或少会有model部分的掺杂,因此了解思想为主要,在编程的格式上就没有必要教条的生搬硬套了。

关于思想MVP(model-view-presenter)的设计模式的导图提供非常好的设计思路。其实MVP跟MVC差不多了,只是对controller的定义区分不太相同。
MVP

Reference:
[1]http://zh.wikipedia.org/zh/MVC
[2]http://mp.weixin.qq.com/s?__biz=MjM5MjAwODM4MA==&mid=204429586&idx=3&sn=33d8ff05682465e2f7b026a411236ceb#rd
[3]android编程权威指南

0 0