组件化通信图

设计之初

在编程中,两个变量如何交换?常用的解决方案会用第三个temp临时变量来存储做置换。那组件之间的通信也如此,如果要降低组件和组件之间的耦合或业务与组件之间的耦合,那么中间件是一个值得考虑的方案。你可以理解为它是第三方,或代理,或装饰器,或传递者。市场上常见的组件间通信方案有三种:URL路由、target action. interface or protocol. 各自有相关的优缺点。interface是从后端java衍生过来的,很多语言已经自带了面向接口编程。而swift正是为此诞生,面向协议编程。早在java ssh框架中,我们就看到过Spring ioc,aop等方式,这也就使得后端代码几乎都是面向接口API编程。依赖注入很好地通过protocol/interface降低了耦合度。

文章关联

依赖注入
泛型&协议
设计键盘

评论