検索

ホームページ  >  に質問  >  本文

objective-c - iOS开发中,工具类和分类的各自优缺点

项目里经常会使用到工具类和分类,同一个功能两种方法都可以使用。
比如在
工具类(UIViewUtil)

+(void)setRadiusInView:(UIView *)view{
    view.cornerRadius = 1;
}

分类:UIView+Radius

-(void)setRadius{
    self.layer.cornerRadius = 1;
}

随手写的,这两个是常用的抽取复用代码的方式,各有什么优缺点,常用的场景,麻烦告知下。

大家讲道理大家讲道理2893日前380

全員に返信(1)返信します

  • 大家讲道理

    大家讲道理2017-04-17 17:59:25

    Category を使用する方が断然便利です。欠点は、拡張メソッド名が競合しないように注意する必要があることです。プレフィックスを追加するのが最善です。また、KVOやNotificationを使用する場合は、拡張メソッドを使用するクラスのdeallocメソッドに、対応するログアウトメソッドを記述する必要があります。これは、Util が Util の dealloc メソッドにログアウトを直接書き込むことができるほど便利ではありません。

    返事
    0
  • キャンセル返事