20151226-App架构以及MVP和MVVM了解

1.MVP:先模仿照抄,搬运工来啦

一种在android中实现MVP模式的新思路

译文-Android的MVP模式开发系列文章(1)

2.android UI设计MVVM设计模式讨论?

上面的跟帖中赞同最多的作者写了系列介绍,觉得不错,很清晰的思路:;

Android App整体架构设计的思考(一)

Android App整体架构设计的思考(二)

学而不思则罔,思而不学则殆。编程和练功一个道理,有时天天写代码就像天天练武,但不思考不看书就仅仅是花拳绣腿,没有感悟就无法提升。但基础不足就看到很深的理论,连个类都封装不好就去看设计模式和架构那肯定也像过早的得到了武功秘籍却怎么看都像天书不知所云。不能一味闷头去写,也不能每天什么都看,加点思考和对比~这么多语言学不过来的,触类旁通掌握住主体思想才是终极策略。

花了两天时间看了些博客的分享,还有一些利用MVP思想实现的例子,因为代码的功底不是太扎实所以只能照葫芦画瓢似的自己实现的小的Demo,以前看过:不能因模式而模式,可能很多App功能简单,小到用起来某种结构反而变的复杂。如android在NDK的帮助文档里写到,不一定用了Jni就可以加速了,需要实际的平衡性能和使用场景。不管怎么样,理解了思想以后才有更多的思考空间,技多不压身嘛~

而且,这种采蜜似的blog大搜罗真的有点像研究生时代为了准备一个讨论版ppt或者是一篇小论文而集中精力研读相关paper的日子,由一篇开始,然后根据它的引用继续一篇篇的追溯,这种链式的发散似的学习场景常常进度延迟,但坚持完成往往会有意想不到的收获。希望以后的过程中能把这些学到的东西以学习笔记或者代码demo的形式记录下来,升华为表达出来的东西才不容易忘记。

我看到的MVP:

翻译的内容:MVP并不算是一个架构模式,因为它只着重于表现层。MVP的主要作用是将View和数据源解耦,一般将app至少分为三层。具体的实现形式很多,主要看我们委托给Presenter层职责情况,比如开始设计的时候:VIew是否要管理进度条的显示或者隐藏和acrionbar上action等等。

面向接口的编程,降低View和Model的耦合度,基本它俩不用直接打交道了,都交给中间人Presenter来办。具体实现上可能要写的类的数目一下子增加了1-2倍,但是每个类的短小精悍,而且更好的体现了 设计模式的SRP单一职责原则。

事件驱动event drive,被动视图passive view,逻辑由Presenter来办,具体实施上,一种方法:以一个登陆Activity为例

View:IView:定义所有login页面上所有View可能的的动作接口,与逻辑相关的接口

Model:IUser:用到的数据接口,定义View交互对数据影响的接口

UserModel:IUser的实现类

Presenter:IPresenter:定义所有login页面上View和数据Model的逻辑相关的操作

PresenterCompl:IPresenter的实现类,IView和IUser都将作为它的成员变量,当然实例化的时候用各自的实现类也就是相应的Activity和UserModel,并且在实现IPresenter中的方法时调用,Activity:LoginActivity,需要实现IView接口。

需要IPresenter作为成员变量,当然实例化的时候用PresenterCompl。

这样的结构的话,Activity中基本的click、滑动等基本事件触发时就能用PresenterCompl定义的逻辑处理,一般此时会用到数据Model的接口对接数据的变化。当逻辑执行完毕后PresenterCompl中会驱动IView中的接口,因为Activity实现了这个接口,当然也就能至执行到相应的代码。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,736评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,167评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,442评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,902评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,302评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,573评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,847评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,562评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,260评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,531评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,021评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,367评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,016评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,068评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,827评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,610评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,514评论 2 269

推荐阅读更多精彩内容