iOS面试题:类簇的优缺点

作者: iOS猿_员 | 来源:发表于2021-07-15 16:15 被阅读0次

类簇是Foundation框架中广泛使用的设计模式。类簇在公共抽象超类下对多个私有的具体子类进行分组。以这种方式对类进行分组简化了面向对象框架的公共可见体系结构,而不会降低其功能丰富度。类簇是基于抽象工厂设计模式的

常见的类簇有 NSStringNSArrayNSDictionary等。 以数组为例:不管创建的是可变还是不可变的数组,在alloc之后得到的类都是 __NSPlaceholderArray。而当我们 init 一个不可变的空数组之后,得到的是 __NSArray0;如果有且只有一个元素,那就是 __NSSingleObjectArrayI;有多个元素的,叫做 __NSArrayIinit 出来一个可变数组的话,都是 __NSArrayM

优点

  • 可以将抽象基类背后的复杂细节隐藏起来。
  • 程序员不会需要记住各种创建对象的具体类实现,简 化了开发成本,提高了开发效率。
  • 便于进行封装和组件化。
  • 减少了 if-else 这样缺乏扩展性的代码。
  • 增加新功能支持不影响其他代码。

缺点

  • 已有的类簇非常不好扩展。

我们运用类簇的场景

a. 出现 bug 时,可以通过崩溃报告中的类簇关键字,快速定位 bug 位置。

b. 在实现一些固定且并不需要经常修改的事物时,可以高效的选择类簇去实现。

  • 针对不同版本,不同机型往往需要不同的设置,这时可以选择使用类簇。
  • app 的设置页面这种并不需要经常修改的页面,可以使用类簇去创建大量重复的布局代码。

收录于网络,如有侵权,请联系小编删除


目录:iOS面试题大全

iOS面试题大全(上)

iOS面试题大全(中)

iOS面试题大全(下)

相关文章

  • iOS面试题:类簇的优缺点

    类簇是Foundation框架中广泛使用的设计模式。类簇在公共抽象超类下对多个私有的具体子类进行分组。以这种方式对...

  • iOS类簇

    IOS 类簇 类簇(class cluster)是一种设计模式,在Foundation Framework中被广泛...

  • iOS 类簇

    iOS 类簇 Person.h Person.m TestCode 打印结果2021-07-14 14:19:16...

  • iOS 类族(类簇)

    什么是类族 "类族"是一种很有用的模式(pattern),可以隐藏"抽象基类"背后的实现细节.比如UIKit框架中...

  • iOS开发 - 类簇

    因此,直接alloc可能造成程序奔溃.比如比如 NSNotification *notif = [[NSNotif...

  • iOS 中的类簇

    类簇的定义 类簇(Class Cluster)是定义相同的接口并提供相同功能的一组类的集合,仅公开接口的抽象类也...

  • 类簇

    类簇在iOS中是一种非常实用的模式,例如:NSArray, NSDictionary等。 那么类簇有哪些特点了: ...

  • UIKit类继承图

    UIKit类继承图 iOS 面试题 微信公众号

  • iOS 类簇(class cluster)

    概括 类簇是一种设计模式(抽象工厂模式),它管理了一组隐藏在公共接口下的私有类。 详解 简单来说,我们调用的是父类...

  • 【iOS】类簇(class cluster)

    类簇实际上是Foundation framework框架下的一种设计模式,它管理了一组隐藏在公共接口下的私有类。 ...

网友评论

    本文标题:iOS面试题:类簇的优缺点

    本文链接:https://www.haomeiwen.com/subject/oufmpltx.html