我有一个类(Android Activity)来处理我的应用程序的启动。该应用程序有一些非常复杂的启动规则。现在它看起来像一堆意大利面,我正在寻找重构它的策略。
老实说,这样一团糟,我遇到了将其黑客攻击以提供伪代码的问题。一般来说,有些启动规则基本上都是用逻辑编写的:
步骤:
在此逻辑期间,它还会更新用户界面。所有这些都是在一个锯齿形的单一整体类中处理的。它很长,它有很多依赖,逻辑非常难以遵循,它似乎触及了应用程序的太多部分。
是否有可用于破解程序启动代码的策略或框架?
答案 0 :(得分:2)
嗯。根据您的步骤,我看到了各种不同的“问题”:
您可以尝试将代码拆分为上述行中的各种对象,例如:
不确定5和6,因为我没有太多可以继续下去。
关于框架,嗯,有各种各样的,如前面提到的Roboguice,可以帮助依赖注入。这些可能派上用场,或者手工操作可能更容易。我认为在考虑依赖注入之前,您需要解开代码。所有依赖注入框架都是为你初始化你的对象 - 你必须首先确保对象有意义。
答案 1 :(得分:0)
在没有任何细节的情况下,我能想到的唯一建议就是将结构良好的功能背后的各个步骤分组,这些功能只做一件事,一件事。
您的6个步骤看起来是您的init函数应具有的6个函数的良好开端。如果#2是同步的(我怀疑它),我会将#2,#3合并到getSettings
函数中。