首先,你创建一个SegueHandlerType,它将SegueIdentifier枚举标识为一个类型:
现在你可以使用功能强大的协议扩展为 UIViewController 对象创建基于字符串的 Segueidentifer 枚举:
注意在协议扩展中的方法并没有在协议中申明--它们并不表示被重写(override)。
这是我见到过的最好的使用实例。现在,使用起来非常简单和美观:
结论
从视频中可以看到使用SegueHandlerType的好处包括:
当新添加segues没有被处理的时候,编译器就会报错
重用性
简洁的语法
我们同时也看到了协议的强大
使用协议以及关联类型来加强应用约束
通过一个被约束的协议扩展来共享实现
这里最重要的一点就是利用了编译器的优点。如果你以这种方式构建你的代码,编译器会为你工作,并在犯错的时候提醒你。