ReactiveSwift:实用功能与自定义扩展功能完美融合
如果您像我一样热衷于功能性反应式编程和大量的ReactiveSwift / Cocoa用户,那么有时您会发现自己在创建自己的扩展。 不久之后,您就会遇到信号(或生成器)和绑定共享相同名称的情况。
实际上的方法是对绑定使用单数名称(如objectValues
,对信号和生成器使用复数(如objectValues
。 在处理集合(例如objectsValue
和objectsValues
,errr等)时,这有点难看。当属性被命名或包含value
时,会发生什么情况–我将让您自己想象。
但是,如果您需要同时创建信号和生成器以及绑定,该怎么办? 您想要保持一致,并且不想使用长句子的后缀,例如objectValuesSignal
和objectValuesProducer
,这就是命名空间扩展可以帮助您的地方!
绑定,信号和生产者扩展的创建方式与以前几乎相同,但没有后缀或复数-只是Base
简单的变量名。
最后,乐趣和收益部分: