实际上,我的4个台风组件中有大约150个组件。在我的应用程序启动时,我用这些程序集初始化TyphoonComponentFactory,它可能很长,这取决于组件的数量和标签iDevice。
例如,组件工厂初始化在iPhone4上需要1200 5S,在iPhone 5S上需要600 5S。
有办法加快组件工厂的初始化吗?
发布于 2014-11-15 03:02:45
实例化台风的“组装”风格设计如下:
自剖析以来已经有一段时间了,但我想这两个性能损失最大的特性是:
自动布线:
有一个新的自动布线功能,将发布作为台风3.0的一部分.虽然仍然是私有的,但它位于主分支上,并且存在于某些Typhoon 2.3.x版本中。它增加了25%的开销。昨天,一个功能被推到允许关闭自动配线。
集合扫描:
台风的收集行为(NSArrays、Sets等)如下:
这允许使用简单直观的DSL,但需要扫描每个集合值,这会增加开销。您的程序集中有许多集合吗?
台风3.0:
我们将在Typhoon3.0发布版中进行一些分析。在此期间,如果您有任何性能,可能会引起Github问题,我们将尝试解决它们。
最小台风(不推荐正常情况):
作为性能的最后一点:除了使用Typhoon的组装风格之外,如果特别关注启动性能,您可以直接使用TyphoonComponentFactory,使Typhoon处于裸露/最小的状态,但是这要冗长得多,并且没有内置的IDE重构、代码完成、使用组装接口解析组件的能力(我们没有运行时args)等等。
https://stackoverflow.com/questions/26934205
复制相似问题