重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
笔者性懒,腹中无墨.
创新互联公司专注于阿勒泰网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供阿勒泰营销型网站建设,阿勒泰网站制作、阿勒泰网页设计、阿勒泰网站官网定制、微信小程序开发服务,打造阿勒泰网络公司原创品牌,更为您提供阿勒泰网站排名全网营销落地服务。
项目组件化可能使用到的framework打包流程梳理(本文均已ISHTool_SDK项目为例).
本教程一步一步教会如何制作自己的远程私有库,一步一步实操,制作过程还是有点小繁琐的。
目录:
创建远程私有仓库存放私有的spec文件并将源添加到本地索引库repo
因为spec文件中保存着库的源码地址,而我们制作的远程私有库是不希望别人看到源码的,所以要将spec文件也变为私有。这样,就需要另一个专门管理多个spec的远程私有仓库。
注意:
发布成功之后,库的测试工程和主工程都可以按照远程pod的方式来使用远程私有库
因为spec文件中保存着库的源码地址,而我们制作的远程私有库是不希望别人看到源码的,所以要将spec文件也变为私有。这样,就需要另一个专门管理多个spec的远程私有仓库。
上一篇讲了一下目前页面跳转路由之间的解耦。
这一篇就来说一些组件之间业务解耦。
有没有想过通过协议来进行组件化之间的解耦。
针对不同的组件创建不同的ServiceProtocol.
就比如登录模块,我们可以这么写。
我们需要在app启动的时候,拿取所有的 继承RouterProviderProtocol的协议。
我这边是写到路由的RouterConfiguration单例中的
现在我们所有的协议对象都存在了provideServiceDict中。
我们新建一个appService服务对象。
就比如新建一个loginSerivice变量,通过重写他的get方法。
去拿取对应的service类对象。
在loginService中实现routerProviderInstance方法。来新建这个服务的实例。
loginservice对象需要实现loginServiceProtocol协议,并实现相应的方法。
下面我们就可以在其他组件中,通过这个实例对象来处理这个组件中的业务逻辑,从而实现组件之间的解耦
组件化编程的关键目的是为了将程序模块化,使各个模块之间可以单独开发,单独测试。当然,随之而来的版本问题也必须要解决,防止出现不兼容的组件版本破坏程序的稳定性。
解释
推送分为2种情况,一个是私有库的推送,例如公司自己的gitLabel;第二个是公有库,例如前面的GitHub
pod组件就完成了,下一篇开始主项目跟组件的交流