外观模式:为系统中的一组接口提供一个统一的接口。外观定义一个高层的接口,让子系统更易于使用。
外观的使用场景
- 子系统正逐渐变的复杂。应用模式的过程中演化出许多类。可以使用外观为这些子系统类提供一个较简单的接口。
- 可以使用外观对子系统进行分层。每个子系统级别有一个外观作为入口点。让它们通过其外观进行通信,可以简化它们的依赖关系。
enum Eternal {
static func set(_ object: Any, forKey defaultName: String) {
let defaults: UserDefaults = UserDefaults.standard
defaults.set(object, forKey:defaultName)
defaults.synchronize()
}
static func object(forKey key: String) -> AnyObject! {
let defaults: UserDefaults = UserDefaults.standard
return defaults.object(forKey: key) as AnyObject!
}
}
/*:
### Usage
*/
Eternal.set("Disconnect me. I’d rather be nothing", forKey:"Bishop")
Eternal.object(forKey: "Bishop")
网友评论