目前iOS组件化常用的解决方案是Pod+路由+持续集成,通常架构设计完成后第一步就是将原来工程里的模块按照架构图分解为一个个独立的pod工程(组件),今天我们就来看看如何创建一个Pod私有库. 新建:pod lib create 假设我们需要创建的库名为TestLib,下面我们使用Pod官方提供的创建模板: 首先进入我们的工作目录,如workspace,输入命令 pod lib create TestLib 创建过程中需要填写几个问题,如下图所示,按个人所需填写: 创建完成以后工程会自动打开,X…
一,前言 为什么要用Cocopods 通常在开发的过程中,大多时候,我们会处理一类相同的操作,比如对于字符串String的邮箱验证,是否为空,手机号验证,或者一些UIView的动画操作,我们为了避免写一些重复的代码,可能经过类目或者延展的形式对原有的类进行了一个扩充.还有一些是工程中一些基本的公共组件,比如城市列表,刷新控件,网络请求库或者商品的目录这种基本公共组件,在工程中好多地方需要调用,我们都可以进行封装成一个组件功能模块.为了以后方便在其他App中使用,我们可以使用Cocoapods把这…
专题一 一.创建私有索引库 选Github或者码云都可以,本例以Github为例.创建私有索引库用来作为自己组件库的索引: 二.本地添加私有索引库 添加:pod repo add 索引库名称 索引库地址 例:pod repo add ZYHModule https://github.com/zyhDeveloper/ZYHModule.git 查询:pod repo 三.创建组件库(同步骤一操作,在Github或者码云上创建) 四.创建组件工程 1.快速创建模版库 在命令行工具里cd进入桌面文件…
前言:本人也是初次接触组件化开发,感觉现有的资料太繁杂,就简单整理了一下,在此跟大家分享一些入手的经验,主要就是描述cocoapods的私有库封装和提交.组件化开发是个大的议题,涉及到架构思路.设计模式应用.项目经验.工具的使用,所以在此只是做一个开始,后面还会做进一步的拓展和深入,尽量做到干货,欢迎探讨和纠正. 目录: 什么是组件化开发 组件化的核心内容 模块间通信的简单Demo Cocoapods 原理 使用cocoapods制作私有库的一般流程详述 小结 一. 什么是组件化开发 1. 概述…
[前言] 大家好,写作是为了和读者沟通交流,欢迎各位开发者一起了解 WisdomRouterKit SDK 的功能. 关于 iOS 组件化路由方案框架: WisdomRouterKit 的功能介绍,之前在简书上有写过相关文章,但是发现阅读量比较低,所以今天决定整理一下 WisdomRouterKit 功能介绍和使用方案,重新更新下文章. 当然本期 WisdomRouterKit SDK 又添加了新的强大功能. [提问] 1:首先 WisdomRouterKit SDK 是一个什么样的框架? 答:…
组件化的优缺点 组件化的拆分 组件与组件之间如何进行通讯(路由) 从Cocopods拉取代码的过程 远程索引库里很多的.spec文件,该文件记录了很多内容,如用户名,框架名称,描述,框架的地址 Podfile 文件是拉取框架源码的配置文件, pod install 命令会根据Podfile中配置来拉取框架源码 Pod setup 命令会把远程索引库拷贝到本地,在本地还有一个检索文件 执行pod search命令过程,并不是直接从远程索引库查找,它是从本地的检索文件,该检索文件是以键值对的形式存在…
iOS 组件化介绍 随着应用需求逐步迭代,应用的代码体积将会越来越大,为了更好的管理应用工程,我们开始借助CocoaPods版本管理工具对原有应用工程进行拆分.但是仅仅完成代码拆分还不足以解决业务之间的代码耦合,为了更好的让拆分出去的业务工程能够独立运行,必须进行组件拆分并且实现组件服务化. 拆分组件 (1)基础功能组件 (2)基础UI组件 (3)产品业务组件 总结:组件化适用于业务稳定.逻辑复杂的app,能够解决项目模块间得耦合问题,有助于多人大团队的协同开发.方便组件的单独开发.单独测试.…
作者原文iOS组件化 - 路由架构从0到1实战  合伙呀 1.CTMediator作为路由中间件 2.基础UI组件以pod形式引入,并且能够独立运行调试 3.基础工具组件以pod形式引入,并且能够独立运行调试 4.业务工具组件可以dependent 3,并且第三方的引入需要二次封装为业务工具组件,方便替换实现方案,与项目0耦合 5.分类的用途是实现组件之间无耦合,为CTMediator架构思想的中心 6.业务组件依赖业务工具组件.基础UI组件.基础工具组件 最后:业务之间通过路由通讯,如果需要组…
如何创建自己的共有库 1.注册Trunk trunk需要CocoaPods 0.33版本以上,用pod --version 命令查看版本 CocoaPods版本 如果版本低,需要升级: sudo gen install cocoapods pod setup 查看自己是否注册过Trunk pod trunk me 没有注册过 注册 // 加上--verbose可以输出详细debug信息,方便出错时查看. pod trunk register zhangyqyx@.com "zhangyqyx&q…
我们在这里,使用的是 第一部分使用pod lib create YohunlUtilsPod 创建的framework工程来说明.其创建过程在此就不重复了,当然你也可以下载我已经创建好的demo https://github.com/yohunl/YohunlUtilsPod PS:既然是私有库,那么我们基本上不会使用github的,相信大家公司都有相应的git平台.不管使用什么git平台提供的服务,操作方式都是一样的 一:建立自己私有的spec仓库 打开隐藏目录,可以使用终端命令  defau…