2

您使用哪种架构模式进行 Android 开发?到目前为止,我一直在使用MVC模式 withBroadcastReceivers在层之间进行通信,但肯定有比这更好的东西。广播的所有注册和取消注册都在杀死我。因此,任何答案都将受到高度赞赏。

提前致谢

4

3 回答 3

1

首先,架构应该与您正在开发的系统/应用程序相关,而不是您正在使用的编程平台。是的,一些语言强制执行特定的实践和模式,但这并不意味着对于特定的应用程序,另一种架构会更合适。

没有适用于所有 android 应用程序的通用架构

MVCbroadcast(或通常是事件驱动的通信)具有完全不同的目标。

简而言之,MVC是将数据与表示分离,同时broadcast促进未知方之间的通信(即broadcast接收者可以响应特定事件而不管哪个组件发送它)

于 2013-02-18T19:17:30.770 回答
0

这是一个糟糕的问题。答案总是“任何适合您尝试编写的程序”。模式并不意味着作为问题的解决方案被插入,模式是一种描述你的架构的语言。

但是考虑到你剩下的问题,我认为你正在做一些非常奇怪的事情。一个非常基本的 Android 应用程序通常是 MVC - Activity 是 Controller,View 类是 View,而 Model 由您创建(或者对于简单的应用程序可能不会被打扰)。BroadcastReceiver 通常很少使用,它们是用来通知来自操作系统或其他应用程序的异步事件。它们不适用于应用内通信。此外,Android 中没有“层”。你到底在做什么?

于 2013-02-18T19:17:10.633 回答
0

虽然在某种程度上,Android 应用程序不可能有一个单一的架构,但我会说,最肯定的是,架构上的好主意。MVC 在 Android 中是一个非常好的主意。您不必使用 BroadcastReceivers 来支持它:您可能可以使用 ContentObservers 做很多事情。另外,看看 Virgil Dobjanschi 关于 RESTful Android 的演讲非常精彩。看看:http ://www.youtube.com/watch?v=xHXn3Kg2IQE

于 2013-02-18T19:23:29.010 回答