2009-06-03 306 views
0

我正在嘗試創建一個大型的flex項目。該項目由一個CORE應用程序和其他子應用程序組成。Flex項目結構

CORE應用程序應包含所有其他項目(例如,鏈接到數據庫,從數據庫加載數據的數據管理器,應用程序信息(如高度寬度顏色字體等))共享的信息。

子應用程序每個都有一定的任務。每個子應用程序本身就是一個大型項目,所以我不認爲將所有代碼放在一個巨大的項目中是一個好主意。

CORE項目應運行主應用程序,並通過導航菜單,我應該能夠點擊並運行其他子應用程序。

有沒有辦法創建CORE應用程序來引用這些子應用程序,以便我可以在CORE內運行它們。同時,這些子應用程序應該引用CORE應用程序來獲取NetConnection到數據庫以及他們可能共享的其他重要信息?

構建此項目的最佳方式是什麼?

感謝,

+0

你知道,如果你用你正在使用的技術(Flex)標記你的問題,**很多**會有更多的人看到它。 – Zifre 2009-06-04 00:03:21

回答

0

有兩個因素需要考慮。

  1. 哪裏代碼住
  2. 哪裏該代碼的編譯後的輸出現場。

將所有源代碼都存放在一個代碼樹中可能是一個好主意。這樣保持容易。您可以將每個子應用程序放在單獨的AS3包中。

分離該代碼的編譯輸出也是一個好主意。使您的核心應用程序成爲主要的Flex應用程序,然後使每個子應用程序成爲Flex模塊。核心應用程序可以加載模塊並像其他任何基於AS3的類一樣操作它們。關於這一點的好處是,在調試期間,您可以選擇僅構建您當時關心的有限組合模塊。

我強烈建議通過某種自動ANT構建腳本來構建您的版本,而不是通過Flex Builder。

我們有一個超過150k行代碼的項目,完全像這樣管理。這在軟件工程方面並不是很大,但在Flex世界中它相當大。

0

你最好的選擇將是把你所建議的成庫項目核心員工。將應用程序的前端保留在Flex應用程序項目中,但所有需要共享的數據和方法都可以輕鬆地供主應用程序和所有其他模塊或應用程序使用。

然後在主應用程序和其他應用程序的項目設置中,可以鏈接到庫項目。

如果您打算使用框架,您還可以查看PureMVC多核庫。這比我上面提供的解決方案稍微複雜一些,但它是專門爲允許在不同應用程序之間共享數據和通知而構建的。

0

聽起來好像你想使用Flex模塊來保持你的子應用程序自包含但仍然能夠與核心應用程序交互。

http://livedocs.adobe.com/flex/3/html/help.html?content=modular_2.html

這將讓你保持你的核心應用程序SWF相當小,按需加載的子應用。

通常,模塊與主應用程序存儲在同一個項目中,但每個應用程序/模塊都可以通過Flex Builder或自動構建工具(如Ant或Maven)編譯到單獨的SWF中。