题目没想好, 写代码的时候考虑全面点吧

最近都是在用Swift, 深深的理解到Swift的安全性. 这种安全是体现在你不需要等到程序运行期间去发现错误, 而是在编译的期间,Xcode就帮你检查出来了. 这里不做详细讨论. 我下面所记录的是在OC中, 如何选择更好的方法, 去让编译器帮你检查错误.

今天看狐狸狗的Demo, 我先他里面有一代码是这么写的:


题目没想好, 写代码的时候考虑全面点吧_第1张图片
就是一个actionSheet 代理方法里面根据buttonIndex的值去执行对应的方法

然后我就好奇,为什么不直接用:


题目没想好, 写代码的时候考虑全面点吧_第2张图片

went后来我想了一下, (可能也是Swift写了多段时间之后的后遗症) 就发现其中可能出问题的几个点:

1, 如果这个时候self 为 nil

2, 如果self 自己本身那3个方法被改了名字

1,什么都不会发生

2,会引起: unrecognized selector sent to instance


如果按上面的写法,

就不会存在这样的问题, 当我的方法名字被修改了时候:


Xcode会帮你检查一次错误

你可能感兴趣的:(题目没想好, 写代码的时候考虑全面点吧)