如何在iOSApp开发中定义层次结构
APP开发
浏览:1280 次

适当的层次和结构可以减少常见问题的复杂性和错误的可能性。本文认为,合适的结构应具有以下特征。
纵向上,各层级之间的依赖关系清晰,基本不存在反向依赖。横向上,模块彼此独立,仅通过有限数量的接口进行通信。理想状态是除核心模块外的所有模块都是可插拔的。

垂直线通常可分为三个层次。表示层负责管理UI和UIViewController;逻辑层负责逻辑数据的定义和转发,逻辑数据充当前后之间的链接;数据访问层负责特定的API构造、网络请求、数据持久性等。水平模块通常取决于业务需求,通常定义为各种服务或管理器。有一个统一的服务管理器负责加载、卸载、监控并向相应的服务分发App级别的通知,例如前台和后台切换、接收内存警告等,这是一个很好的做法。
根据业务逻辑的复杂性,每一层将在内部使用单层或多层结构。以数据访问层为例,一般可以细分为网络层和持久层。通常,表示层(UIView和UIViewController)直接使用逻辑层提供的模型进行表示。然而,在某些场景中,不同的模型通常需要具有相同的界面表示(例如,在我们的App EasyTalk中,会话界面、最喜欢的界面以及问答功能都需要用图片表示,但这三个模块下的模型定义不一致),这需要添加一个额外的ViewModel层来粘合表示层和逻辑模型。

,注册后为新手提供免费开发包
