【发布时间】:2011-03-11 09:21:49
【问题描述】:
我经常在使用 Flex 时遇到同样的问题:当我为 spark 组件创建皮肤或基于另一个 spark 组件创建新的 spark 组件时,我继承了我不需要的属性。例如,当我为 spark.components.Panel 创建自定义外观时,我不需要 RectangularDropShadow。目前为了摆脱它,我将它从 MXML 代码中删除,并在 AS 中创建一个与已删除组件 ID 中命名的类型相同的公共变量。我这样做是为了满足 OOP 的 Liskov 原则并且它可以工作 (http://en.wikipedia.org/wiki/Liskov_substitution_principle) 但我有未使用的属性/变量,这不好。我认为这不是最好的方法。
当然还有另一种方法:例如,为了创建没有不需要的继承特性 spark.components.Panel 的自定义面板,我必须创建自己的自定义面板,该面板继承自 spark.components.Panel 的超类。这种方法意味着一些额外的工作,但这是直接的 OOP 方法。
但也许还有其他我还不知道的 Flex 特定技术?
我想知道 Flex-guru 是如何处理这个问题的。欢迎您提出所有想法和建议!
【问题讨论】:
标签: apache-flex actionscript-3 oop