我应该使用哪种设计模式来通知更改? Java /科特林Android

时间:2019-07-01 00:44:24

标签: java android design-patterns kotlin

在这种情况下,我正在构建一个SDK,以便向客户通知三种不同的触摸状态:

  1. 接触物体

  2. 物体触及外面

  3. 对象触摸出口

我尝试使用观察者设计模式,在该模式中,观察者将更新发送给所有作为客户的观察者。但是有一些问题。

https://stonesoupprogramming.com/2017/10/28/observer-pattern-in-kotlin/

根据该设计指南,要使客户订阅,他们需要编写以下代码:

val bob = Bob()
bob.addObserver(Customer1())



 class Customer1: Observer{

    val name = "Customer1"

    override fun update(o: Observable?, arg: Any?) {
      // Do your logic here
    }
}

这意味着客户在集成SDK时都需要声明一个名为Customer1的类文件和扩展的Observer。

是否可以简化让客户注册为我们SDK的Observable的观察者的过程?我不确定要实现哪种抽象。

1 个答案:

答案 0 :(得分:0)

Pub / Sub也是另一种选择。发布事件和其他代码区域可以订阅/收听它们,并做出反应或响应。