gpt4 book ai didi

android - android中使用的设计模式是什么?

转载 作者:IT老高 更新时间:2023-10-28 22:22:55 24 4
gpt4 key购买 nike

我知道一些在android中使用的设计模式,比如......

  1. 广播接收器使用观察者设计模式
  2. Intent 使用了一种工厂设计模式
  3. View 使用复合设计模式
  4. 媒体框架使用外观设计模式

除了这些之外,还有其他在android中使用的设计模式吗?欣赏你的想法

最佳答案

Android 在其结构中使用了很多模式。

您可以看到的第一个模式是层模式,它在 POSA 1(面向模式的软件架构 1)一书中被归类为架构模式。 Layers 模式的主要结构特征是 Layer J 的服务仅由 LayerJ+1 使用,层之间没有进一步的直接依赖关系。这种模式将解决低级和高级问题混合的问题,即高级操作依赖于低级操作。 Android 是建立在多抽象层的堆栈之上的(更多细节请引用 http://elinux.org/Android_Architecture),所以部署这个设计是为了解决它的问题。

Android 在多进程上做了很多事情,因此需要精心设计 IPC(进程间通信)机制。在 Android 中,Binder 和使用 AIDL 进行无缝通信,尽管这些进程中的服务可以用 Java、C 或 C++ 编写。 Binder 是通过 Proxy(在 Gang of Four 书中)、Broker(在 POSA 1 书中)和 Facade Wrapper 模式(引用此链接 http://www.cs.wustl.edu/~schmidt/PDF/wrapper-facade.pdf )来实现的。代理模式将对客户端隐藏通信细节,因此进程可以在本地上下文或网络上下文中统一与对象通信。 Broker 用于隔离与通信相关的问题。 Facade Wrapper 模式用于将 C 库 Android 中的低级函数和数据结构封装在更高的类接口(interface)中。

多线程机制也使用了很多模式。我们可以看到一个模式是用于执行长时间运行调用的命令处理器模式。

观察者模式用于跟踪系统相关状态。

….

我现在能记住的就这些了。如果您对 Android 设计模式感兴趣。你可以看看这个类(class):https://class.coursera.org/posa-001/class/index有关更多详细信息,请访问 Coursera。

关于android - android中使用的设计模式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15729383/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com