美文网首页开发者的灵魂
iOS架构 - App中组件启动流程问题

iOS架构 - App中组件启动流程问题

作者: 素还真人 | 来源:发表于2019-01-02 22:10 被阅读0次

    2018年最后一次code review结果,做了处理,对App的启动流程做了优化;

    查看了iOS正则、NSPredicate的使用,NSPredicate是个很强大的东西,哈;

    学习了JavaScript、MySQL等;

    查看了马云的演讲,主要去了解"DT + Ai时代";

    App启动,组件如何启动?

    1、组件化之前

    在还未做组件化之前,那是一个乱糟糟,AppDelegate中,各种代码,能搞到好几百行。

    2、组件化

    将各个业务拆分、解耦之后,我们实现项目的组件化,有基础服务、基础业务、核心业务等。

    3、组件化之后

    无论项目怎么拆分,App是要启动的,就要加载各种服务、业务等,那各个组件如何启动呢?

    好一点的,Appdelegate中,每个组件提供初始化方法;差一点的,Appdelegate中有各种组件的配置,比组件化之前代码是少了,但又涉及到各个组件的启动顺序问题:组件之间有依赖,先启动谁,后启动谁,就会影响组件的功能。

    4、组件自启动

    组件的启动、配置等,不会再放到Appdelegate中,而是做成懒加载的方式,组件被需要的时候,才会进行启动、加载配置,主要解决组件相互依赖导致启动顺序受限制、暂无用组件乱启动导致的问题。

    基础服务、基础业务等组件,分为两部分:核心代码、业务代码。

    我们将核心代码拆分做成私有pod组件,因为不涉及到业务,很少改动;业务代码部分,做成配置(文件、delegate等方式),写在在主工程中,以方便针对不同项目的不同业务进行改动。

    我们使用这种模式,对各个组件、主项目进行了规范处理。

    相关文章

      网友评论

        本文标题:iOS架构 - App中组件启动流程问题

        本文链接:https://www.haomeiwen.com/subject/shytrqtx.html