以“类族模式”隐藏细节--Effective笔记

类族模式可以隐藏抽象基类背后的实现细节。Objective-C的系统框架中普遍使用此模式。

比如界面框架UIKit中就有一个名为UIButton的类。想创建按钮,需要调用下面这个类方法
-UIButton buttonWithType:(UIButtonType)type;
该方法返回的对象,其类型取决于传入的按钮类型。然而,不管返回什么类型的对象,它们都继承自同一个基类:UIButton。 这么做的意义在于:UIButton类的使用者无须关心创建出来的按钮具体属于哪个子类,也不用考虑按钮的绘制方式等细节。使用者只需明白如何创建按钮,如何设置像标题这样的属性,如何增加触摸动作的目标对象等问题就好。

1,类族模式可以把实现细节隐藏在一套简单的公共接口后面。
2,系统框架中经常使用类族。
3,从类族的公共抽象基类中继承子类时要当心,若有开发文档,则应首先阅读。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容