Swift:协议作为类型使用的优点

协议(Protocol),是一种类型,故,可以使用协议,定义一些变量,常量等。
使用的好处是,方便代码瘦身。

有情况如下:

  • 协议 protocolA,有个方法 funcA,这个方法用来实现功能 roleAroleA 能获得关键的数据 dataAdataA 是从网络实时获得的
  • classB,遵守 protocolA,并实现了 funcA,也就是实现了功能 roleA ,拥有了数据 dataA
  • 这时,来了个 classC,也需要数据 dataA,所以,他也必须遵守 protocolA,然后去实现 funcA
  • 以后又来了 classD,E,F ...都需要数据 dataA,那么都需要做与 classC 相同的工作,很是麻烦

为了减少不必要的工作,可以在 classD,E,F ...中,定义一个变量 var AA :protocolA; 然后给它赋值:AA = classB();然后在 类 C,D,E,F...中使用功能 roleA 时,直接用变量 AA调用 funcA,使用里面的动态数据就可以了,很是方便。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容