我想分发框架A。框架A依赖于框架B。我希望框架的用户只需要包括框架A,但仍然可以通过编程方式访问框架B。
Apple始终使用“伞框架”(Umbrella Frameworks)的概念来执行此操作,但是文档中包含以下主题:
不要创建伞框架
尽管可以使用Xcode创建伞形框架,但是对于大多数开发人员而言,这样做是不必要的,因此不建议这样做。苹果使用伞形框架掩盖了操作系统中库之间的某些相互依赖关系。在几乎所有情况下,您都应该可以将代码包含在单个标准框架包中。另外,如果您的代码具有足够的模块化,则可以创建多个框架,但是在那种情况下,模块之间的依赖关系将是最小的或不存在,因此不应保证为它们创建保护伞。
为什么不鼓励这种方法?是什么让它成为解决Apple相互依赖框架问题而不是我的框架的好解决方案?
潇湘沐
墨色风雨