繁体   English   中英

iOS中的设计模式作为装饰模式

[英]Design pattern in iOS as decorator pattern

我对iOS中的设计模式有疑问。

我有一个带有xib文件的UIView。 我们可以将此视图视为视图模板。

现在我们可以考虑几个视图(例如,子类),它们指定视图模板的行为(不同的方法,动画等)。

在我的情况下,有什么可能是好的吗? 一些设计模式? 例如,Decorator设计模式?

装饰设计模式

Decorator设计模式动态地将附加职责附加到对象。 装饰器为子类化提供了灵活的替代扩展功能。 与子类化一样,修饰器模式的调整允许您在不修改现有代码的情况下合并新行为。 装饰器包装类的对象,它们的行为扩展。 它们实现与它们包装的对象相同的接口,并在将任务委派给包装对象之前或之后添加它们自己的行为。 Decorator模式表达了这样的设计原则:类应该对扩展开放但是对于修改是封闭的。

有几种与多态相关的模式可以在Swift中使用,但是你经常会看到的两个关键模式是Decorator和Adapter模式。 这些分别使用语言关键字扩展和协议来实现。

Swift中Decorator模式的主要示例是创建扩展时。 在Objective-C中,类别的机制类似。

iOS设计模式

http://en.wikipedia.org/wiki/Decorator_pattern

http://zubairraihan.blogspot.in/2013/02/decorator-design-pattern-in-objective-c.html

http://techrantnz.blogspot.in/2011/08/decorator-builder-design-pattern-in.html

面向向内-对象设计-迅速部分-2-

装饰模式对此有好处。 您可以装饰UIView以具有滚动指示器并将其装饰到文本视图等等...通过子类扩展视图。

在您的情况下,您可以在XIB中标记View(属性检查器)的Custom Class类型,以指向具有此行为的子类。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM