4 Android/IOS设计模式: MVC/MVP 代理模式 单例模式

1 MVC  MVP
Android MVP模型:Model 数据 + View(Activity/Fragment/View+Adapter) + Presenter(DataPresenter)数据代理
Model 相对独立,部分View+Adapter 也相对独立,可以复用
Activity 中抽取了数据处理部分 到DataPresenter 中来处理

IOS MVC模型: model 数据  + View (cell header UIView) + Controller (ViewController) 
数据和布局,拆分出来,还比较独立
控制器 Controller 做了比较多的逻辑处理

思考:IOS 参照Android 从ViewController 中抽取逻辑部分,建立 Delegater 来处理

2 代理模式

代理模式:就是解耦,通过代理对象 来访问目标对象
中间通过代理对象,定义好协议,实现这个协议,就是我们的代理对象

Android  MVP   Model + View + Presenter
主要拿View  Presenter 来说
Acitivity 作为一个大的布局View  数据代理给到Presenter 
Presenter 就是Activity 的数据代理
然后数据处理完以后,需要回调,这个其实可以发广播/handler Message/传匿名接口都可以
还是使用代理, 定义一个View处理接口,Acitivty 继承,然后给到Presenter 作为刷新View 的代理

IOS 
UIViewController
需要将 点击以后的数据筛选代理出去
再定义一个  ChooseTypeView   它负责弹窗,数据获取,点击事件
ChooseTypesView 就是UIViewController 的弹窗代理
然后它需要回调回来
我们定义一个接口,也就是协议,让UIViewController 执行
然后给到 ChooseTypesView  作为刷新数据的代理

Android 代理所有数据的处理
IOS 目前代理的是部分UI操作

3 单例模式
相对比较好理解,只希望独立一份的,单例
暂缓
 

猜你喜欢

转载自blog.csdn.net/qq_42022061/article/details/88414218