目前,我正在开发我的第一个应用,并且我注意到正在出现的某些工作流模式。具体来说,Android应用程序遵循一种类似树的用户活动流,其中每个用户操作通常要么进入树的更深的分支,要么返回到根。
因此,出现的开发模式是:添加可操作的小部件 - >为他们添加监听器方法 - >发送意图开始新活动&将数据传递给他们 - >构建新的活动布局和类以接收这些数据 - >重复。
然后在某些活动中会有小部件显示数据库数据(所以你必须设置CursorAdapters等),还有一些修改数据库数据(所以你必须实现更新/添加/删除方法等)
我的问题是:是否有某种方法可以自动化这个工作流程,或者提高效率?即是否存在某种基于模式的脚本,您可以在其中绘制活动的树结构,以及需要CursorAdapters等的项目,然后为该模式编写框架类?似乎编码“狗”工作,可以这么说,例如敲定应用程序的骨架方面,与繁琐的功能相比,需要进行大量的打字工作。
我想我正在寻找的是洞察力量编码器或者精英'通常写Android应用程序。
干杯
答案 0 :(得分:8)
我不知道会为你创建项目骨架的基于模式的脚本语言,但IntelliJ的UML to Java代码生成可能会有类似的东西(我从来没有试过这个)。
然而,这就是我通常在Android项目中减少锅炉板代码的方式:
Android Studio将为您完成大量工作。例如,创建一个新的“带片段的空白活动”将为您创建具有基本样板的活动,片段和xml布局。
除了内置模板,您还可以使用“工具>>将文件另存为模板”在Android Studio中创建自己的模板。另请查看您的POJO的“代码>>生成”。
创建可由多个活动,方向和屏幕尺寸重复使用的片段和视图。
使用第三方库减少一些锅炉板并在Android中绕过一些低效的范例 - 具体来说:
通常,只需注意注释代码生成器。确保它们在编译时生成代码而不是运行时(反射),或者反射不会导致严重问题。有关更好的库列表,请参阅:
https://github.com/codepath/android_guides/wiki/Must-Have-Libraries
答案 1 :(得分:1)
正如您所说,Android中的许多应用都可以共享相同的软件架构和代码组织。
我不知道有些代码生成器可以基于可配置的首选项生成Android Studio模板,但我已经创建了一个教程/模板Android Studio项目,您可以克隆/分叉并在其上构建您的应用程序。
此模板中采用的架构模式是MVC - 一种广泛接受的架构模式,用于构建“面向用户”的软件,AOSP核心架构师(IMHO)忽视了该模式。使用单一架构模式在单个模板上构建应用程序具有巨大的优势 - 一旦习惯了模板,您在编写和调试应用程序时将更加高效。
此外,此模板中使用的代码组织将实际业务逻辑(您称之为“多余功能”)与“无聊”UI处理内容分开。
您可以在此处找到教程/模板MVC项目:https://github.com/techyourchance/android_mvc_template