详解swift中xcworkspace多项目管理

2020-01-08 23:53:32刘景俊

给大家详细简介了xcworkspace多项目管理的设置方法,一起来学习下。

技术说明:

今天在这里分享 swift下的 xcworkspace多项目管理(架构思想),能为我们在开发中带来哪些便捷?能为我们对整个工程的维护,整理,模块解偶带来哪些优势?以及在swift与OC下的混编开发中的调用会遇到哪些问题?

带着问题探研:

(1).xcworkspace工程怎么创建?工程framework如何创建?主工程项目如何创建?

(2).主工程调用子工程framework如果配置?

(3).framework与framework之间如何调用?

(4).xcworkspace工程Pods的集成,framework的Pods第三的集成?

(5).Podfile文件的编辑,以及对应主工程,对应framework的编写方式?

--------------历史分析-----------------------

你还在搭建这样的框架吗?

swift,xcworkspace,多项目管理

缺点:

这种方式搭建的项目会随着项目功能不断的强大,从而会使模块文件越来越庞大,也会使项目维护思维近近模糊,

业务层代码与数据层代码和项目核心层代码相互交织,无法拆分,不符合一个中上等级以及长远发展公司型的构架思想!

来看下大公司项目的搭建吧:

swift,xcworkspace,多项目管理

优点很明确,个个模块可以拆分,架构思想清晰明朗,业务层独立清晰没有耦合

--------------xcworkspace项目创建--------------

File -> New -> Workspace

--------------子工程framework创建 (注意:新建主工程,不要创建成framework)

1 :File -> New -> Project -> framework (创建的是静态库)

swift,xcworkspace,多项目管理

 

2 :修改添加目标到workspace:(就是上一步创建的Workspace工程)

 swift,xcworkspace,多项目管理

 

--------------主工程调用子工程framework相关配置--------------

第一:子工程暴露文件出来:必须顺序执行

BuildPhases -> Headers -> Public(只有放入共有栏,才能调用)->  导入项目代码文件(一般默认放在Project中)

BuildPhases -> Headers -> Public ->  中导入需要暴露给的OC 的头文件 (一般默认实现)

(注意:只有混编的时候才需要导入,也就是没有混编,framework中的.h文件可以删除)

BuildPhases -> Compile Sources ->  中导入项目代码文件