1

我身后有很多 .Net 开发,我的大多数应用程序都分层在 UI、服务、BL 和 DAL .. 和数据库层中。每一层通常都是它自己的项目,都相互引用以使数据流通过解决方案。

我是 Java 和 Android 的新手。看起来我们开发了一个输出文件,因此开发了一个项目。我会简单地为每一层使用不同的文件夹吗?也许是一个 ServiceLayer 文件夹,里面有类,然后是一个 BusinessLayer 文件夹,里面有业务类?

保持代码清洁和可维护的通常结构是什么?我不是出于专业原因这样做(还)。纯粹是为了学习。

编辑:该应用程序只是一个简单的应用程序,允许用户每天输入有关某事的数据(简单的 UI,可能有一些下拉查找从数据库中获取“参考数据”),并允许用户选择某事,输入一些详细信息,并存储到内置的 SQLite 数据库中。

一旦工作正常,我想将数据同步到在线数据库(我将编写一个托管在 .Net 托管系统(目前为 GoDaddy)上的 web 服务),它将存储最新数据,并提供一个 web 前端以提供更容易如果用户可以访问笔记本电脑或 PC,则数据输入)。因此,某种网络服务刷新了我的应用程序,并将更新发送到服务器。

4

1 回答 1

2

首先,这取决于您在做什么应用程序。

您应该对用户如何使用应用程序进行文字或示意图描述。解决所有可能的情况。写下稍后将用于测试的示例。

决定什么属于功能,什么 - 属于可变配置。从场景中提取功能和数据实体。

从场景中决定您的应用程序将是什么。是服务、活动、小部件,甚至是内容提供者还是复杂的系统,包括一些不同的组件。根据情景测试您的决定。

在复杂系统的情况下,在应用程序组件之间分配功能和数据实体。列出组件及其是什么(活动或其他)。

制作 UI 组件列表,并描述它们做什么(还不是 HOW) 这些将是稍后的小部件和活动或片段或布局。

为 UI 组件制作草稿布局。从一个到另一个进行简单的传递。看看用户界面。返回场景并使用您的草稿 UI 播放所有场景。所有 UI 组件和类都放入一个包或包的层次结构中。

制作数据实体列表。决定什么是什么。将它们计划为数据库或不同数据库中的集合或表。将它们作为类,将它们放入另一个包层次结构或另一个包中。这里还放了 DB 助手——通过 SQL 与 DB 对话的类。

制作一个测试类,用于用测试数据填充 UI 和数据实体并启动它们。

适配器不必是公共的,因为它们仅在其父 GroupView 中使用。因此,通常没有适配器文件。

不要将所有全局变量放入特殊的静态类中——这是一种不好的做法。您正在混合代码和配置。

Configuration data put into recources. If some of them are complex, use XML sources and parser(s). Make readers of resource data into global variables. Not all of them will be static! They could belong to the main Activity instance, for example.

Do not use unconfigurable constants in the code! May be, your name only :-). Every other constant becomes non-constant sometimes.

Always do so:write something - connect something to a bulk - add test(s) for this new thing - test this new one - test the bulk - repeat. Small steps only!

于 2012-08-11T23:12:34.147 回答