Home 安卓开发 - 流行架构和第三方库
Post
Cancel

安卓开发 - 流行架构和第三方库

MVP

MVP 和其他模式的比较

【Android】mvp架构模式知识汇总

MVP的实际使用和 Starter工程

【Android】完善的mvp架构封装demo(可项目中使用)

安卓 MVP 项目中的常用依赖

Android - Dagger2使用详解

Dagger2

依赖注入的概念

某个类A持有另一个类B的实例, 这个实例的初始化时机有几种?

  1. 在A的构造方法中传入一个B类实例.
  2. 实例化A之后,将B属性 public, 在外部进行赋值.
  3. 在A实例初始化后的某个时机, 调用某个方法其中有对b类实例的初始化代码.

这就是依赖注入的三种情形.

  • 构造器注入 Constructor Injection
  • 属性注入 Property Injection
  • 方法注入 Method Injection

注入时机越早越好, 避免A类的某些功能依赖B实例的时候,但是B实例还没有被初始化.

依赖注入的实际情况

  1. 如果一个类的是项目中已经被多处使用的类, 为这个类添加一个实例成员之后, 如果使用构造器注入的方式 注入一个依赖实例, 那么项目中凡是依赖这个类的地方的构造方法都需要改动, 影响范围不可控.

Dagger2的原理和用法

常见注解

Android - Dagger2使用详解

四: MVP + Dagger2 这是现在主流的设计架构 MVP,这个我会在后面的文章介绍,这里不做太多解释 当你了解MVP 的时候,你就知道,所有的业务逻辑全在Presenter, 换句话, presenter 持有的对象,控制着你程序的全部逻辑,这在dagger 中,讲白了 我们只要将所有的presetner 对象控制就可以了

横向对比

iOS 中的 依赖注入 + VIPER

Agrasiv/SwinjectProjectExample

This post is licensed under CC BY 4.0 by the author.

增肌减脂 - 肌肉量新知

iOS开发--DI和单元测试