美文网首页2016技术笔记
2016笔记——组件化学习(一)

2016笔记——组件化学习(一)

作者: 满庭花醉三千客 | 来源:发表于2018-07-27 15:33 被阅读5次

为了实现项目的组件化,今天开始研究蘑菇街组件化。

Protocol方案:

第一步,写一个简单的项目,项目内容是

FirstVC ->SecondVC->ThirdVC跳转。

第二步,新建一个项目,将FirstVC、SecondVC、ThirdVC导入到新的项目中来。

第三步,新建一个继承于NSObject的ModuleManager,也就是组件管理中心。

第四步,新建一个继承于NSObject的CompontProtocol,也就是协议中心。

然后在CompontProtocol中添加ProjectAProtocol协议:

屏幕快照 2016-10-11 下午4.54.37.png

第五步,在ModuleManager.h中添加三个方法:

屏幕快照 2016-10-11 下午4.58.39.png

第六步,在ModuleManager.m中实现这三个方法:

屏幕快照 2016-10-11 下午5.00.30.png 屏幕快照 2016-10-11 下午5.01.36.png 屏幕快照 2016-10-11 下午5.01.47.png

第七步,前往FirstViewController,也就是我们添加组件的入口VC,做如下处理:

屏幕快照 2016-10-11 下午5.11.43.png

FirstViewController.m:

屏幕快照 2016-10-11 下午5.12.44.png 屏幕快照 2016-10-11 下午5.12.59.png 屏幕快照 2016-10-11 下午5.13.19.png

本步综述:

导入ModuleManager和CompontProtocol头文件。

签订协议。

在load方法中注册本类与协议。

实现协议方法。

特定条件触发的block,需要保存原block,触发后回传值。

第八步,在本项目的ViewController中导入ModuleManager和CompontProtocol的头文件,然后添加按钮,并在按钮点击事件中写:

屏幕快照 2016-10-11 下午5.03.03.png

第九步,运行:

protocol.gif

效果可以,那么那些处理的信息呢?

看看打印台:

屏幕快照 2016-10-11 下午5.09.58.png

整体剖析:

组件(FirstVC-SecondVC-ThirdVC),组建管理中心(ModuleManager),协议中心(CompontProtocol),新外壳(新建的项目)关系:

组件和组件管理中心、协议中心耦合

新外壳中的VC与组件中心和协议中心耦合。

新外壳的ViewController与组件无关联。

至此,我们已经实现了Protocol方案的组件化~

加油~

相关文章

网友评论

    本文标题:2016笔记——组件化学习(一)

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