【iOS(swift)笔记-2】iOS MVP总结

MDataModel 

          服务端数据或本地数据对应的实体类


MService(这里也可以先抽象出ServiceProtocol然后Service继承ServiceProtocol实现其抽象方法,则Presenter持有的是ServiceProtocol实例)

请求本地或服务端数据


MServiceListener

针对Service请求的回调监听,监听也是Protocol,需要在Presenter中实现(当然也可以直接使用闭包处理回调操作)



VViewProtocol  

抽象View具有的行为操作

{对于View的接口,去观察功能上的操作,然后考虑:

  • 该操作需要什么?(getUserName, getPassword
  • 该操作的结果,对应的反馈?(toMainActivity, showFailedError)
  • 该操作过程中对应的友好的交互?(showLoading, hideLoading)

}



VViewController 

1、遵守协议ViewProtocol,并实现其抽象方法

2、持有Presenter实例

3、调用Presenter绑定Service实例的方法

4、调用Presenter绑定ViewProtocol实例的方法(此时ViewController即是ViewProtocol,因为“ViewController遵守协议ViewProtocol,并实现其抽象方法

5、调用Presenter实例处理业务的方法


PPresenter

1、持有ServiceViewProtocol实例(需要公开绑定Service实例 绑定ViewProtocol实例的方法)

2、通过利用Service实例获取到数据,再利用ViewProtocol实例调用其抽象方法处理数据(这里即是“Presenter处理业务的方法

3、实现ServiceListener



实例项目


https://github.com/1987151729/k_english_ios



猜你喜欢

转载自blog.csdn.net/xihuandaxiaojie/article/details/78882538