2012-04-16 71 views
1

我正在使用PureMVC Standard的項目。現在我需要添加一個新的模塊SWF,它也使用標準。我知道解決方案是用MultiCore MVC替換標準MVC,但有兩個問題:如何用PureMVC MultiCore替換PureMVC標準

  • 標準的包裝結構與MultiCore不同 - 我必須手動更正嗎?
  • 在標準的mvc框架下,在Mediator的構造函數中允許使用一些代碼,而在MultiCore中,這似乎是絕對禁止的 - 所以我必須更改這麼多的構造函數才能擺脫這種情況?

最後:除了用MultiCore替換Standard之外,有沒有更好的方法來解決這個問題?

+1

你好,歡迎來到StackOverflow。我冒昧地改進你的語言和格式。請查看格式化沙箱以瞭解如何使您的問題更具可讀性:http://meta.stackexchange.com/questions/3122/formatting-sandbox – weltraumpirat 2012-04-16 05:42:41

回答

1

我不知道任何其他更好的方法來更改程序包結構,而不是整個項目中的全局搜索和替換。這樣做也沒有問題。

對於介體,我從來沒有在構造函數中初始化簡單變量(int,布爾值,數組等)的問題,但其他任何東西都會推遲到onRegister(特別是任何涉及舞臺的任何東西),並看是這樣的:

public class MyMediator extends Mediator implements IMediator { 
    public static const NAME : String = "MyMediator"; 

    // internal states 
    private var foo : int; 

    public function MyMediator (viewComponent : Object) { 
     super(NAME, viewComponent); 

     foo = 0; 

     trace("MyMediator()", main_mc); 
    } 

    override public function onRegister() : void { 
     main_mc.addEventListener(...); 
    } 

    protected function get main_mc() : Main { 
     return viewComponent as Main; 
    } 
} 

有稀疏contructors在AS3是一個好主意,無論如何,因爲constructor code is always interpreted and not compiled

出於習慣,現在,我使用多核處理所有項目,即使我有一個核心。這使得重新使用新項目中的中介和代理變得更容易。

相關問題