Luar's Flash Playground:為Flash MX 2004帶路
新聞(101)
觀點或評論(94)
Flash書(63)
教程(72)
Design Patterns(3)
FlashCom筆記(47)
Flash Remoting筆記(27)
Flex筆記(11)
Flash Lite筆記(14)
PHP資訊(23)
Ajax筆記(9)
習作(50)
組件(16)
酷站(32)
學習資源(28)
書籍推介(15)
本站與我(91)
RSS瀏覽器
聯絡
熱愛鑽研
Ajax
ActionScript
Flash
Flash Lite
Flex
Flash Remoting
FlashCom
Director
Lingo
PHP
Multiplayer Game

搜尋
VCASMO
為Flash MX 2004帶路 (26-08-2003)

8月25日,Macromedia終於宣佈了Studio MX 2004全線新產品,閃客們最關心的除了Flash功能上的加強外,就是ActionScript編程上改變,究竟又要學習那些新東西?

普通版的價值
老實說,如果你是Designer,我早說過,別浪費金錢昇級了,Flash MX 2004普通版,根本沒有吸引力,現在只不過是變相加價,將Flash吸引的新功能全放到專業版上。普通版較實際的是Commands和Behaviors。

Commands
Commands可以將第三方插件直接整合到Flash中,第三方插件就算不整合到Flash中,以前獨立執行第三方插件,需要Export SWF,再由Flash Import入來,現在於可以直接反映到Timeline中,一些著名第三方插件,如製作字體效果和立體圖像的軟體,都會有整合到Flash中的新版本推出(現在是Beta測試中)。普通版內置Commands暫時有Timeline Effects,有用過Photoshop的人都知道Layer Style是什麼,Timeline Effects就是類似那東西,為圖像變Blur、Drop Shadow、Expand、Explode。另外有一些獨立開發人員可以開發Commands給Flash,我覺得等於Plugin for Flash,做一些類似KPT Vector Effects的效果。

Behaviors
Behaviors先出現在Director 6,到Dreamweaver時被發揚光大,就是一些寫好ActionScript程序給不懂編程Designer用,我經常覺得Designer工作不包括編程,有這些Behaviors又如何?另外,加入了History Panel,方便大家工作時Undo,History Panel用一種叫JavaScript Flash (JSFL)編寫,簡單講一句,你就可以紀錄了工作步驟,下次再用,等於Office Macro,說穿了,就是Photoshop的Actions。

專業版的改變
專業版最重要改變,我認為有5個:一、Data Binding,與服務器、Web Services數據交換更緊密整合;二、組件編程新架構;三、ActionScript 2.0;四、Form Based應用程序開發;五、協同工作源碼管理

Data Binding
基本上Flash連接服務器已經很方便,專業版有DataGrid組件,也有類似FireFly組件,在IDE環境直接連接Remote Services等,不知道之前買了Flash Remoting、DRK 2(為了DataGrid組件)、DCK(為了FireFly組件)的人有什麼感覺……

組件編程新架構
組件編程新架構叫Macromedia Component Architecture,用ActionScript 2.0編寫,目的是可以製作出統一外觀(Appearance)和回響/反應(Behaviors)組件。

利用Classes去定義組件的Style和Skin的基礎,即是你可以控制組件外觀。

組件另外提供了Broadcaster/Listener Event Model,就是我喜歡的Callback功能,例如完成一件事,發生一件事會自動/主動通知你。

其他組件新加功能還有深度(Depth)和焦點(Focus)管理,輔助功能(Accessibility)的配合。

Macromedia內置組件(包括不少DRK4-5組件,以前付錢買的人又要.:~>_<~:.)是編譯成*.swc文件,不可以像以前直接修改組件代碼。

題外話,以前Macromedia內置組件都是灰色的,新的組件是白色,設計類似Aqua或WinXP,有一個主題名稱(Theme)叫Halo。

ActionScript 2.0
如果說ActionScript 1.0是JavaScript,那2.0就是Java,嚴謹Data Type,完全Class Based,非常類似Java!閃客不禁擔心自己不懂Java,是否很難學習?我要強調一點,ActionScript 2.0出現,並不表示舊的ActionScript 1.0被淘汰,因為ActionScript 2.0只是給開發人員一個更嚴謹的編程語言,方便開發,方便編譯時Debug等。用ActionScript 2.0寫的Flash,可以給Flash Player 6支持,因為1.0和2.0都是編譯為同一類Byte-code。2.0除了編程語法、概念分別外,它必須寫在*.as外部文件中,只被專業版支持。我想傳統程序員都會喜歡用ActionScript 2.0。

Form Based
又是從傳統應用程序開發搬到Flash功能,以往用Timeline定義程序不同狀態的時代已經過去,現在是一張張的Form,另一個傳統程序員會喜歡功能。以往做應用程序開發時,千方百計要避免使用者按背後窗口,菜單、選單等,因而影響目前窗口或對話盒,現在都不怕了,可以通過Form去管理和控制。

協同工作源碼管理
多人共同開發Flash應用時必須要源碼管理,先為Flash應用建立一個Flash Project(*.flp),所有文件都要Check-in Check-out,避免兩人同時修改同一個文件,源碼管理功能可以和M$ SourceSafe結合,我以前就是用M$ SourceSafe,一直想不到現在Flash都可以用它。

Flash MX 2004缺點
我不喜歡將Help整合到Flash中,雖然Help是HTML,但目錄是XML,需要在Flash中才可以使用,太多面板,畫面已經不夠用,Help啟動又慢。以前可以簡單地打開Browser,查看Help,現在不可以了 :(

Flash MX 2004啟動時間太長,通常要等1-2分鐘才開啟,可能是背後的激活在作怪,可惡!

本文章由發表。
意見
  • 我想問一下, AS不是基于prototype的語言麼? 這是我在OOPwithAS中看到的. 怎麼到2.0就變成了基于class的呢? 到底class-based比prototype-based好在什麼地方呢?

    jerrowolf於26-08-2003發表

  • 我比較關心ActionScript 2.0, 究竟它是衍生自ECMAScript Version 4還是Java呢?從Macromedia看到的一幅圖片, 就很像ECMAScript, 但不能確定, 而且ActionScript 1.0本來衍生自ECMAScript Version 3, 應不會見異思遷轉投往Java吧, 想問個明白.:)

    由Jiu於26-08-2003發表

  • ECMAScript Version 4

    luar於26-08-2003發表

  • 為了支持Flash Player 6,AS2.0的Class最後都是編譯為Prototype。

    luar於27-08-2003發表

  • 不支持Xpath schamer ,有些遺憾

    由digitalboy於28-08-2003發表

  • 請問什麼是"FireFly"組件

    由Jack Hsieh於28-08-2003發表

  • FireFly是一個方便開發者製作Flash與數據庫交換數據的組件,不過現在已經內置到MX 2004 Pro中, 正式壽終正寢。

    luar於28-08-2003發表

  • 該不會連Flash Remoting MX都被納入到Flash MX Professional 2004了吧!
    如果是...那可真慘...因為我才剛研究出一點點的心得而已...

    由Jack Hsieh於31-08-2003發表

  • 基于Prototype的語言是純粹的OOP,不過編程習慣會不好一些。因為原本可以寫繼承的flash開發者,都去改Prototype了,呵呵。

    7yue於01-09-2003發表

  • Flash MX 2004啟動時間太長,通常要等1-2分鐘才開啟?比開機還慢!!

    由123於08-09-2003發表

同組文章

Movable Type 4.32-en系統支持,Luar's Production版權所有。