项目里经常会使用到工具类和分类,同一个功能两种方法都可以使用。比如在工具类(UIViewUtil)
+(void)setRadiusInView:(UIView *)view{ view.cornerRadius = 1; }
分类:UIView+Radius
-(void)setRadius{ self.layer.cornerRadius = 1; }
随手写的,这两个是常用的抽取复用代码的方式,各有什么优缺点,常用的场景,麻烦告知下。
光阴似箭催人老,日月如移越少年。
用 Category 肯定是要方便些,缺點是要注意擴充的方法名稱不要衝突了,最好加個前綴。還有如果用了KVO或Notification就得在用到該擴展方法的類別的dealloc方法寫對應的註銷方法。這點沒Util方便,Util可以直接寫在Util的dealloc方法裡註銷。
用 Category 肯定是要方便些,缺點是要注意擴充的方法名稱不要衝突了,最好加個前綴。還有如果用了KVO或Notification就得在用到該擴展方法的類別的dealloc方法寫對應的註銷方法。這點沒Util方便,Util可以直接寫在Util的dealloc方法裡註銷。