在Flex中开发可视化组件的最佳实践是什么?
我这样做:我认为组件有两个“部分”,声明性部分(可视子组件),我在皮肤中定义的部分(仅仅是mxml)和代码部分(事件处理程序.)这是我在动作脚本类中定义的。我在操作脚本类的ctor中加载皮肤。我还定义了皮肤部件、状态,并在partAdded函数中绑定事件处理程序。
我正在讨论这个问题;我应该纯粹在.mxml中定义组件,在脚本标记中使用侦听器,并可能附加一个皮肤(但是皮肤应该是松散的--可能是为了重用:-?)
我来自.NET,也许我对模式背后的代码有偏见,我想知道从您的经验和Adobe的意图来看,通常实现可视化组件的最佳实践是什么?
发布于 2012-06-06 15:30:31
实现组件的方法有三种。
扩展UIComponent。
MXML只是ActionScript的一个抽象。在编译Flex应用程序时,源代码将将MXML转换为ActionScript。因此,在fx:Script标记中使用ActionScript基本上是没有错的。有些人说,视图不应该包含逻辑(当用MXML实现时),但这很愚蠢,因为您需要ActionScript来定义行为。
扩展SkinnableComponent并定义皮肤类。这是非常有用的,当主题为不同的客户端或加载不同的视觉外观取决于用户的角色。
aprouch背后的代码可以很容易地在ActionScript中实现,无论是聚合还是继承。另外,MVVM也可以很容易地实现。但通常情况下,这不是你使用的模式。通常在Flex中,您使用MVC/MVC。
您可能想看看:闪存构建器4.6-后面的代码
https://softwareengineering.stackexchange.com/questions/73547
复制相似问题