java - 我应该使用哪种设计模式来通知更改? Java/Kotlin 安卓

标签 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 观察者的过程?我不确定要实现什么样的抽象。

最佳答案

Pub/Sub 也是另一种选择。发布事件和其他区域的代码可以订阅/监听它们,并使用react或响应。

关于java - 我应该使用哪种设计模式来通知更改? Java/Kotlin 安卓,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56829025/

相关文章:

Java 命令行错误 (linux) - 无法找到或加载主类

JavaFX 文本在高 DPI 上无法正确缩放

android - 如何在Android中做 'busy'动画?

php - 在不使用数据库或文件的情况下在 php 中进行基于 Web 的聊天

java - 将 Java 集合转换为 Scala 集合

eclipse - 无法运行 Eclipse IDE

java - Android 应该使用哪些端口?

android: 如何在模拟器上播放 YouTube 视频

java - 如何实现每30分钟登录一次的客户端?

jquery - 在 HTML 中适本地分配 ID