苹果开发中文网站组件化方案调研(23)
}
@end原理和缺点
每个组件先通过Mediator拿到其他的组件对象class , 然后在实例化该class为实例对象 , 再通过该对象去调用它自身实现的protocol方法 , 因为是通过接口的形式实现的方法 , 所以任何类型参数都是可以传递的 。
但是这会导致一个问题:组件方法的调用是分散在各地的 , 没有统一的入口 , 也就没法做组件不存在时的统一处理 。
从上面的实现就可以看出来A调用B不是直接通过mediator去调用 , 而是先通过mediator生成其他组件的对象 , 然后自己再用该对象去调用其他组件的方法 , 这就导致组件方法调用分散在各个调用组件内部 , 而不能像target-action方案那样对所有组件的方法调用进行统一的管理 。
再者这种方式让组件同时依赖两个中心:ProtocolMediator和CommonProtocol , 依赖越多 , 后期扩展和迁移也会相对困难 。
并且这种调用其他组件的方式有点诡异 , 不是正常的使用方法 , 一般都是直接你发起一个调用请求 , 其他组件直接把执行结果告诉你 , 但是这里确实给你返回一个组件对象 , 让你自己在用这个对象去发起请求 , 这操作有点蛋疼 。 。 。
总结
其实蘑菇街的url-scheme加上protocol-class方案一起提供组件间跳转和调用会让人无所适从 , 使用者还要区分不同的参数要使用的不同的方法 , 而target-action方案可以用相同的方法来传递任意参数 。 综上所述 , target-action方案更优 。 组件化
推荐阅读
- 高圆圆|高圆圆现身扫楼生图曝光!穿紧身裙臀部凸出显眼,脸上苹果肌饱满
- 周也|17岁爆红,从“红苹果女主”到“卖货柜姐”,她怎么落魄成这样了?
- 奥斯卡|长泽雅美主持“日本奥斯卡”发布会,玫瑰粉无袖裙显胖苹果肌饱满,木村落选
- 苹果肌|济南海峡整形科普:关于玻尿酸那些事你都了解吗?
- 红苹果乐园|钟汉良果然是我妈最爱!《今生有你》首播夺冠,中年爱情太好磕了
- |洪成成更新频率太高引粉丝担忧,在小号公开发与男友甜蜜合照
- 家族荣耀|大衣哥儿子笑了,与相亲对象分食一个苹果,陈亚男心里是啥滋味?
- 陈亚男|复合无望!陈父再次公开发文,为女儿喊冤,此前被曝动手打朱小伟
- 陈亚男|陈亚男离婚风波后,其父亲再次公开发文,为女儿喊冤:她是无辜的
- 张纪中|让道具老师上街找了一夜的苹果,加戏删戏太随意!张纪中:太难搞
