前天的思路:
思路:
所有Acitivy自带的。
界面点击的。
放在 Activity。
(只有完全没可能放在Activity之外的地方的方法,才放在Activity里)所有Activity衍生的,
全部移至 Presenter (通过 activity 方法参数传递。)所有,在不同Activity对应的Presenter,中多次出现的类似方法,
封装到工具类库。
昨天和今天你的第二版内容:
①多参数数据集,可以用Object打包
②handleP之外,可以为Presenter添加新的处理本地逻辑,本地视图的方法(以示区别)
(RxJava,似乎只在网络阶段,有较多应用。所以,应该都是,没有严格的先后秩序之分的)
③所有的和Activity操作,其实都可以通过Presenter传单一Activity实例,来实现引用所有和Activity相关的方法的。(同时,也不用担心Activity的声明周期为空,因为————>Kotlin有防空指针的全套机制)
④主要集中在,Activity和Presenter的分离。
Activity只集中于Activity自身声明周期和Context环境。Activity的View,尽可能放到Presenter中去做。
⑤Presenter,放置大量的方法。如此这般,Activity和Module层,都会足够轻巧。Presenter会成为最沉重的一层。如此这般,形成“两头轻,中间重”的局势。(两头轻,中间重。于是,4.0的工作,也有了着落了。————4.0,将会集中于Presenter的大量集成和优化。)
⑥Presenter,主要实现最大化的完整功能。Activity,调用Presenter,实现控制流程(实现形式,是多个Presenter的累加)。
⑦中间想了一下,有点背离MVP的某些原则。但Activity减负,势在必行!
⑧go——ready——do——after
⑨go——没有ready所消耗的延迟——do——after
⑩那么:Activity的onAfterView() 里面,将只剩下附属(后述)功能。
⑩①打破了一个禁忌,将在Presenter里,直接调用 activity 的变量。(其实真的很不建议。)(用参数列表传进去就好,为了不直接调用,全部把 activity 中的变量,设置为 private 。)
【变数】:不瞒你说,全部设为private,再分别传进去,实在是太麻烦了。而且限制也很多。于是————我在activity这段,进行了一个let { ui -> } 封装。
附加:
①其实还有一种形式,就是变量的合并————>比如bundle的一组数据,比如多个条件共同组成的boolean值。而这个,就需要很好的架构条件了。