就最佳实践而言,协议应在何处宣布?在相关类或其自己的单独文件中?
无论哪种方式都可以在理论上发挥作用,但是有没有理由以这种或那种方式引导?
答案 0 :(得分:3)
我遵循将委托协议保存在包含委托属性的类的文件中的规则。
以下代码大纲说明了将协议保留在将设置委托的属性中。
<强> MyClass.swift:强>
protocol MyDelegate: class {
func firstDelegateMethod()
func secondDelegateMethod()
}
class MyClass {
weak var delegate: MyDelegate?
}
委托是需要符合协议的对象,由其他类定义,而不是包含协议的类。
记住代表是做这项工作的人是有帮助的。他们完成协议中声明的内容。
跟踪这些关系可能会让人感到困惑,因为协议基本上可以放在任何地方。如果您遵循这样的一致模式,它将使生活更轻松,您的代码更易于管理。