iOS开发指南 从零基础到App Store上架(第3版)10.8 基于同一工作空间框架实现的WFSOO模式_iOS开发指南 从零基础到App Store上架(第3版)10.8 基于同一工作空间框架实现的WFSOO模式试读-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > 编程 > iOS开发指南 从零基础到App Store上架(第3版) > 10.8 基于同一工作空间框架实现的WFSOO模式

iOS开发指南 从零基础到App Store上架(第3版)——10.8 基于同一工作空间框架实现的WFSOO模式

上一节介绍了基于同一工作空间框架实现的WFOOO模式,本节介绍一下WFSOO模式。 10.8.1 设置Public头文件 BusinessLogicLayer和PersistenceLayer都是框架工程,我们需要设置框架工程头文件为Public,具体步骤是:参考图10-17所示,使用鼠标将所有头文件从Project栏拖曳至Public栏中。 PersistenceLayer工程需要设置为Public的文件有:PersistenceLayer.h、NoteDAO.h和Note.h。 BusinessLogicLayer工程需要设置为Public的文件有:BusinessLogicLayer.h和NoteBL.h。 10.8.2 建立表示层与业务逻辑层的依赖关系 由于表示层用Swift实现,业务逻辑层用Objective-C实现,所以Swift调用Objective-C时需要添加桥接头文件PresentationLayer-Bridging-Header.h,该文件的内容如下: #import <BusinessLogicLayer/NoteBL.h> #import <PersistenceLayer/Note.h> #import <PersistenceLayer/NoteDAO.h> 具体的配置过程可以参考10.4.3节。 10.8.3 代码重构 为了适应在工作空间中使用框架,我们需要将代码进行重构。 1. 数据持久层重构 数据持久层重构可以参考10.7节,不同的是还需要修改框架工程头文件,它的命名是“<框架工程>.h”。数据持久层框架工程头文件是PersistenceLayer.h,这个文件在创建框架工程的时候自动生成,可以将框架中要暴露的头文件声明在这个文件中。 修改PersistenceLayer.h的代码,具体如下: #import <Foundation/Foundation.h> //定义项目版本号 FOUNDATION_EXPORT double PersistenceLayerVersionNumber; //定义项目版本 FOUNDATION_EXPORT const unsigned char PersistenceLayerVersionString[]; //框架中要暴露的头文件 #import <PersistenceLayer/Note.h> #import <PersistenceLayer/NoteDAO.h> 提示 工程头文件主要是在Swift和Objective-C混合调用时使用,即WFSOO模式和WFOSS模式下使用,而在WFOOO和WFSSS模式下可以省略该文件。 2. 业务逻辑层重构 修改BusinessLogicLayer.h的代码,具体如下: #import <Foundation/Foundation.h> //定义项目版本号 FOUNDATION_EXPORT double BusinessLogicLayerVersionNumber; //定义项目版本 FOUNDATION_EXPORT const unsigned char BusinessLogicLayerVersionString []; //框架中要暴露的头文件 #import <BusinessLogicLayer/NoteBL.h> 修改业务逻辑层BusinessLogicLayer引入头文件的方式,相关代码如下: #import <Foundation/Foundation.h> #import <PersistenceLayer/NoteDAO.h> #import <PersistenceLayer/Note.h> @interface NoteBL : NSObject //插入备忘录的方法 -(NSMutableArray*) createNote:(Note*)model; //删除备忘录的方法 -(NSMutableArray*) remove:(Note*)model; //查询所有数据的方法 -(NSMutableArray*) findAll; @end 3. 表示层重构 在表示层PresentationLayer中,需要修改import代码: import BusinessLogicLayer import PersistenceLayer 设置完成后,就可以编译并运行工作空间了。

展开全文

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

《iOS开发指南 从零基础到App Store上架(第3版)》其他试读目录

• 1.1 iOS概述
• 1.2 开发环境及开发工具
• 1.3 本书中的约定
• 10.1 低耦合企业级系统架构设计
• 10.2 iOS分层架构设计
• 10.3 实例:MyNotes应用
• 10.4 基于同一工程的分层
• 10.5 基于同一工作空间静态链接库实现的WLSOO模式
• 10.6 基于同一工作空间框架实现的WFSSS模式
• 10.7 基于同一工作空间框架实现的WFOOO模式
• 10.8 基于同一工作空间框架实现的WFSOO模式 [当前]
• 10.9 基于同一工作空间框架实现的WFOSS模式