iOS端组件化架构开发与管理

iOS端组件化架构开发与管理_第1张图片
iOS端组件化架构开发与管理.png

iOS组件化参考:

Casa大神的iOS应用架构谈 组件化方案

组件化架构漫谈

开发管理

得益于Git&CocoaPods的版本管理与库依赖功能,Git与CocoaPods知识请移步百度&Google。

iOS端组件化架构开发与管理_第2张图片
组件化开发合并图.png
  • 私有Cocoapods仓库 iCSpec
  • 资源文件Bundle库 iCResources
  • 基础模块库化 iCBaseClass | iCMacro | iCResources | iCNetwork | iCCategory
  • 业务模块组件化 RNMessage
  • CocoaPods合并组件到主工程 Running-iOS

原则

  • 基础组件尽可能不依赖基础组件。
  • 业务组件只能依赖基础组件,永远不依赖业务组件。
  • 业务组件提供Target_AAC..目标类公其他业务组件调用。
  • 业务组件通过CTMediator+AAB_AAC分类与其他组件通讯(AAB表示当前业务组件名,AAC表示目标组件名)。
  • 从主项目调用组件通过CTMediator+RN_AAC分类调用(RN表示项目前缀)
  • 业务组件命名以AA开头,仅有Target_AA..,其他文件以项目前缀开头。是为了在Pods中业务组件排在最前易与区分。
  • 基础组件以项目前缀开头。易于区分私有基础组件与第三方库。
  • 基础组件与业务组件的platform :ios, 'x.0' 支持版本必须小于等于 主项目的 platform :ios, 'x.0'支持版本(当前库的ios 'x.0' >= 依赖的库的ios 'x.0')
iOS端组件化架构开发与管理_第3张图片
组件化项目管理.png

你可能感兴趣的:(iOS端组件化架构开发与管理)