ios - 带协议(protocol)的 Swift 类扩展 vs 遵守协议(protocol)

标签 ios swift protocols

this教程中,作者使用了扩展FlickrPhotosViewController: UITextFieldDelegate,然后实现了协议(protocol)方法。我已经测试过,作者可以轻松地完成class FlickrPhotosViewController: UICollectionViewController, UITextFieldDelegate并实现类中的方法。我能看到的唯一区别是它更容易阅读和理解。这是一种设计风格还是什么?

最佳答案

Is this a design style or something

非常如此。将一个类分成多个扩展是一种常见的风格,每个扩展都表示该类采用一个或多个相关协议(protocol)。但这种分离没有功能意义;类可以在没有这种分隔的情况下被表达。

关于ios - 带协议(protocol)的 Swift 类扩展 vs 遵守协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31464604/

相关文章:

objective-c - 使用委托(delegate)以编程方式创建 UIWebView

swift - 我的应用程序可以检测到它是由 Siri 打开的吗?

C# 寻找 2 路通信。 (世界CF)

swift - 在 Swift 2 中声明符合协议(protocol)的 UIView 类型的变量

ios - Realm, Swift, 多对多关系

xcode - UIWebView 以编程方式禁用缩放

ios - 在 iOS/Swift 的子屏幕中是否有显示结果的搜索栏?

swift - 如何使用 SwiftUI 交替行?

swift - 使用带有自定义参数的协议(protocol)函数

ios - Accessory Tapped 未在 UITableView 中触发 segue