【问题标题】:Tips on organizing larger Android projects?组织大型 Android 项目的技巧?
【发布时间】:2011-08-03 03:47:23
【问题描述】:

我目前的项目变得非常庞大。我有几十个活动、适配器、片段、布局 xml 和其他资源。

在我以前的(较小的)项目中,我用 1 个包/1 个类别的样式组织了一些东西。所以我有 com.stuff.xy.adapter、com.stuff.xy.activity 等等。现在这些包包含太多的项目,我发现自己浪费了大量时间在包层次结构中搜索特定类。

我使用 Eclipse,并且有一些可以使用的快捷方式(例如转到类定义),但那些往往是情境(我不能使用它来快速跳转到布局定义 xml)。

您能否分享一些有效组织大型项目的技巧?或者可能有一些插件? (例如,如果我可以将处理特定应用程序屏幕的源文件(适配器、布局、活动和片段代码)组合在一起,这可能会有所帮助,这样我就可以快速打开它们)

编辑:在开发大型项目数月后

首先,我尝试使用 Eclipse 来处理工作集。它并没有真正适合我,我的问题是我们的单个 Android 项目太大了,包含许多资源、类、接口等。在单个项目的上下文中处理工作集需要太多时间,我认为它们主要用于在单个工作区中组织项目。

从长远来看,我们将庞大的单个项目分成许多较小的 android-library 项目和一个依赖于所有这些较小项目的“主应用程序”项目。通过这种方式,我们可以在这些库项目(有许多布局、值、样式仅在应用程序的某些部分中使用)和代码之间分割资源。我还创建了一个基础库,所有其他库都依赖它,并包含应用程序每个部分所需的资源和(基)类。

【问题讨论】:

  • 不要对每个屏幕的来源进行分组。你会遇到问题,你不能组织你多次使用的类,你可能会停止重用代码
  • 我认为大型项目的最大成本是增加编译和打包时间。如果每次我们必须等待半分钟或更长时间然后看到我们的设备出现在我们应用程序的第一个窗口中,那么开发会很无聊。那么对于您的 Edit 方法,它是否显着缩短了编译时间?

标签: android code-organization


【解决方案1】:

对于“我不能用它来快速跳转到一个布局定义xml”的问题,你可以点击布局xml的名称,然后ctrl+shift+R会引导你到那个定义页面。

【讨论】:

    【解决方案2】:

    在 Eclipse 中,您可以使用 Working Sets 在 Project Explorer 视图中过滤源/布局/资源文件。这比包更强大一点,因为它可以操作所有文件,包括布局和图像资源,而不仅仅是 java 源文件。

    例如,您可以创建一个 Home 工作集,其中包含 HomeActivity.java、HomeAdapter.java、res/layout/home.xml、res/drawable/home_icon.png 等。

    【讨论】:

    • 是的,这个肯定很有帮助!我坚持我只能将整个项目与工作集组合在一起。但是将项目中的资源组合在一起会更好!
    【解决方案3】:

    对于我所有的 android 项目,我更喜欢按以下结构对代码进行排序:

    com.company.projectname 是应用程序的包。 底层包:

    model - 我所有的业务对象

    logic - 实现业务逻辑的服务和对象

    screens - 项目的所有活动。如果活动需要适配器等,那么每个活动都放在屏幕包下的一个单独的包中,相关的东西放在同一个项目中。

    tools - 带有实用程序类的包。 SettingsUtil 等。

    在包的根目录中,我通常有带常量的 Constants.java 接口。

    【讨论】:

    • 非常感谢! @Vladimir 请你认为你可以在这里帮助我goo.gl/MAjgTh ??
    【解决方案4】:

    只是另一个提示。

    使用 Ctrl-Shift-R 快速打开资源(您会得到一个自动完成下拉菜单)和 Ctrl-Shift-T 快速打开一个 java 类。该列表还将使用最近打开的文件自动填充。

    【讨论】:

    • 我一直在使用它们,当你有太多的包时非常有用;)
    【解决方案5】:

    也许是一个提示:快速进入 Eclipse 中的声明

    悬停类或方法时按住Ctrl。 1 秒后,您会得到一个带有开放声明/开放实现的弹出窗口

    在大型项目中非常有用。

    对于其余部分,我建议让它变得直观,并对包中的所有活动以及所有计算进行排序,例如

    【讨论】:

    • 另一种跳转到声明的有用方法:将光标移动到类或方法名称中的某处,然后按 F3
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-07
    • 1970-01-01
    • 2014-08-24
    • 2014-10-10
    • 2012-11-04
    • 2012-06-26
    相关资源
    最近更新 更多