外观
外观:为系统中的一组接口提供一个统一的接口。外观定义一个高层的接口,让子系统更易于使用。
外观的使用场景
- 子系统正逐渐变的复杂。应用模式的过程中演化出许多类。可以使用外观为这些子系统类提供一个较简单的接口。
- 可以使用外观对子系统进行分层。每个子系统级别有一个外观作为入口点。让它们通过其外观进行通信,可以简化它们的依赖关系。
外观在Objective-C中的实现
外观模式就是多一层封装以简化对外的接口,外观模式实现难度不大主要是应用场景。下面是一个应用场景举例。
1、在一个模拟搭乘出租车到X地点的程序中,Car和Taximeter分别是车和计价器类,我们要在使用是分别调用两个类的方法完成复杂的功能。
Car.h
@interface Car : NSObject
- (void)releaseBrakes;
- (void)changeGears;
- (void)pressAccelerator;
- (void)pressBrakes;
- (void)releaseAccelerator;
Taximeter.h
@interface Taximeter : NSObject
- (void)start;
- (void)stop;
2、通过外观模式,我们再抽象一层CabDriver.h,这样我们只需要调用CabDriver中的一个方法就可以完成负责的操作了,这样的好处是简化接口、对上层屏蔽复杂实现。
@interface CabDriver : NSObject
- (void)driveToLocation:(Location*)location;
本文探讨了外观模式在简化复杂子系统接口方面的应用。通过引入外观模式,开发者能够为子系统提供一个统一且简单的接口,减少外部调用者的复杂性。文章详细介绍了外观模式的实现方式,并通过实例展示了如何在Objective-C中应用这一模式。

被折叠的 条评论
为什么被折叠?



