在Flex MVC环境中重用功能的最佳方法是什么?

时间:2009-01-09 20:29:10

标签: flex model-view-controller actionscript code-reuse cairngorm

我正在为我当前的项目使用Cairngorm MVC架构。

我有几个命令使用返回值的相同类型的函数。我希望在一个地方有这个功能,并重用它,而不是复制每个命令中的代码。这样做的最佳方式是什么?

3 个答案:

答案 0 :(得分:1)

这里有很多选项 - 模型或控制器中公开定义的功能,例如:

var mySharedFunction:Function = function():void
{
   trace("foo");
}

...新类或现有类的静态方法等。但最佳实践可能取决于函数需要做什么。你能详细说明吗?

答案 1 :(得分:1)

为命令创建一个抽象基类,并在受保护的范围中添加您的函数。如果需要在其他任何地方重用它,请将它重构为实用程序类的公共静态方法。

答案 2 :(得分:1)

在您的一个Cairngorm类中创建一个静态类或静态方法。

class MyStatic
{
    public static function myFunction(value:String):String
    {
        return "Returning " + value;
    }
}

然后你想要使用你的功能:

import MyStatic;

var str:String = MyStatic.myFunction("test");

另一个选择是创建顶级功能(la“trace”)。看看我写的here

这篇文章
相关问题