首先,这取决于您在做什么应用程序。
您应该对用户如何使用应用程序进行文字或示意图描述。解决所有可能的情况。写下稍后将用于测试的示例。
决定什么属于功能,什么 - 属于可变配置。从场景中提取功能和数据实体。
从场景中决定您的应用程序将是什么。是服务、活动、小部件,甚至是内容提供者还是复杂的系统,包括一些不同的组件。根据情景测试您的决定。
在复杂系统的情况下,在应用程序组件之间分配功能和数据实体。列出组件及其是什么(活动或其他)。
制作 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!