安卓架构模式

标签 android design-patterns architecture architectural-patterns

<分区>

我刚刚开始 android 开发,我正在尝试开发我的第一个应用程序,我实际上将要发布它。我有 Java 的编程背景和一些模式的知识,但是我不知道在开发 Android 应用程序时我应该坚持哪些模式。还有放线程的地方。我正在开发一个应用程序,它不断地通过 PHP 脚本从远程数据库加载数据并将它们显示在 UI 上。我将一个应用程序分为几层——表示层、领域层/服务层和数据源层。在它们之间,我创建了外观来访问下面层的服务。我真的不知道我是应该坚持这个结构还是根据其他一些模式完全重建这个应用程序。在开发之初就发现它比以后被迫重建整个应用程序要好。因此,如果有人可以为我提供一些关于架构模式的链接,我可以使用这些链接或在这里写一些简短的内容,我将非常感激!

最佳答案

在我看来 single responsibility principle将整个应用程序分成不同的层(例如MVC pattern,但Android与正式的MVC并不完全兼容)是Android开发中的一个很好的做法。下面我将讨论主要的层:

表示层:

例如,Android 框架为表示层 提供了一个非常简单的 XML 表示,关于这个 XML 表示,您不应该在代码中创建用户界面的东西。相反,您必须通过 XML 来完成。

应用逻辑层:

对于应用程序逻辑层,最好在代码中完成,而不是在其他任何地方,例如Android XML 中有一个android:onclick="function_name" 属性(用于将 onClickListener 分配给 View )但是作为 MVC 模式, View /表示层必须与 Controller /逻辑层完全分离。

数据源层:

最后,您可以拥有一个数据源层,它的职责是提供数据、持久化数据以及所有与数据相关的东西。在 Android 中,您会在这一层放置一些东西,例如处理 SQLite、ContentProviders、SharedPreferences 等

结果:

我认为最好选择一个主要架构模式并根据您选择的模式在高抽象级别设计您的应用程序,然后实现其子层。我最喜欢的架构设计和实现方法听起来像是自上而下的方法,在这种策略中,您将以自上而下的方式/从更抽象到更不抽象来设计您的应用程序/少细节到多细节

关于安卓架构模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18745100/

相关文章:

android - 如何以 KB/MB 为单位获取数据库的大小

silverlight - 定义可靠的 SIlverlight 4 架构

node.js - postgres 中的大量数据库 - 架构最佳实践

android - 更改微调器下拉列表的位置

android - 如何将大位图缩放为方形位图

c++ - 一个类可以通过什么方式访问另一个类的成员?

sql-server - 选择/插入更新插入的版本 : is there a design pattern for high concurrency?

javascript - NodeJS - 目录结构模式

android - CallRedirectionService 实现不起作用

java - 工厂模式是正确的模式吗?