这通常是关于在MVC视图中创建高级操作时更好实用的理论问题。
示例:
我想拥有基于给定字符添加自身彩色子视图的视图。 A是绿色,B - 黄色,C - 蓝色等。每个子视图的宽度按比例缩放。例如:我比W更好。
它还具有平移手势识别器,可以更改生成的子视图之间的间距。
它还会记住给定的字符串。
我知道这个例子很明显,但问题是:
是否更好地为视图创建子类并向其添加所需的方法和参数
或
使用装饰器模式并创建新对象,该对象引用它将执行操作的视图 ?
我希望我在这里很清楚
答案 0 :(得分:1)
我会使用装饰器模式,这意味着创建新对象,该对象引用它将执行操作的视图。
我会为你指定的每个函数添加单独的装饰器。
你不会以这种方式违反单一责任原则(S来自SOLID)。