如果貴公司的 Flash 平台的開發方式也是:用 Flash IDE 製作畫面,但邏輯程式都用外部 AS Code Editor(筆記本、Flex Builder、Flash Develop...)來編輯 *.as 的話,你一定會遇到一些命名問題,在 *.as 想要使用的某些類別名稱 是來自於 *.fla 中 Library 定義(匯出)的類別,當然我們可以使用 getDefinitionByName() 或其他方式來將指定字串變成想要的類別 進而產生實體,不過只要一個不注意的話,就很容易出錯並 debug 到死~尤其若是有使用擾亂器(obfuscator,一種將 *.swf 內部的程式碼改變其命名、定義...等程式碼的工具,目的是讓反組譯出來的原始碼不易閱讀)的話,恐怕那更會是一個災難。
這裡有一篇文章:http://www.airtightinteractive.com/news/?p=327
他建議我們可以將 *.fla 的素材以匯出 *.swc 的方式,來提供給 flex builder 使用,這樣當 flex builder 的 AS Project 引用這些 *.swc 時,就可以正確的找到實際存在的類別名稱。
不知道若是有使用擾亂器的話,是否仍可具有相同的優勢,不過對於一般開發的話,這種做法確實應該會比較保險一點,讓 *.fla 與 *.as 能更同步一些!
0 意見:
張貼意見