September, 2005 > 所有文章列表

中午吃飽飯沒事把FMS2 (damn, 每次都唸成 FM2 -_-)裝起來玩了一下。
裝好後第一件事就是看看多了那些 API,下面是所有API列表(打 * 號的是新版才有的):
Application
Client
*File
*LoadVars
*Log
NetConnection
NetStream
SharedObject
*SOAPCall
*SOAPFault
*WebService
*XML
*XMLSocket
*XMLStream
其中比較讓人注意的有:
-NetStream多了一個 setVirtualPath,配合 Client.virtualkeys 可以依客戶端的player版本自動切換使用 sorenson spark 或 on2 VP6 video, 意思是說,如果偵測到客人裝的是 FP8,就可以自動切換到高品質的video播放。(這也是整份手冊裏跟 VP6最相關的部份,其它的把戲都在client端)
virtualkeys長這樣:
XML:
-
<virtualkeys>
-
<key from="WIN 7,0,19,0" to="WIN 9,0,0,0">A</key>
-
<key from="WIN 6,0,0,0" to="WIN 7,0,18,0">B</key>
-
<key from="MAC 6,0,0,0" to="MAC 7,0,55,0">B</key>
-
</virtualkeys>
-File access: 幾年前寫flashcom app時,得用 server-side Sharedobject 來模擬一個local db, 不但效能差而且管理也很亂,現在有了正式的 file access就方便多了。為了安全起見,FMS2的file access仍然是在sandbox 裏進行,可以用下面的config 去設定app可存取的目錄:
XML:
-
<jsengine>
-
<fileobject>
-
<virtualdirectory>/videos;C:\myvideos</virtualdirectory>
-
<virtualdirectory>/fcsapps;C:\Program Files\fcs\applications
-
</virtualdirectory></fileobject>
-
</jsengine>
照上面的設定,當程式裏鍵入 /videos 時,實際上是寫入 C:\myvideos,其餘依此類推;另外這個File API的指令跟 C, PHP非常像,所有常見的 (open, append, write, lock...)都一應俱全,如果能順便支援 sqlite就好了啊 orz
-loadVars, XML: 這兩個也是 flash player端至少三年前的技術,不過現在可以用於server端了。這代表日後 FMS要與 app server連繫時,不會被限制在只能用 flash remoting (經由 NetConnection),而可以用比較常見的 http get/post。
-web service: 這個就比較有趣,原本我以為mm會順便把xpath做進來,不過從現有的API看來似乎是沒有,而且功能頗為陽春,這部份可能要自已補強。
-xml stream: 這玩意是 xml socket 的演化版,主要目地就是傳輸方式改用 xml stream,進而可以跟 jabber 這類的IM server溝通,除了封包的前面會加上
tag 做為標識外,其餘內容與用法都跟 xml socket一樣。不過可千萬別小看這個 jabber-support, 這裏面可能會很驚人的發展,呵呵呵,let's wait and see.
FMS2 online doc
note: 以beta 軟體來說,這次FMS2的表現實在是異常優秀,壓根沒beta的樣子啊~還是mm的政策其實就是想免費放送 FMS2啊啊啊啊啊啊~
| by admin
The New Face of Flash
最近正在為 10月5日的課程說明會做準備(詳情在這裏),包括四處找資料與範例程式好在當天播放,結果今天看到這篇有趣的文章。
這篇文章的作者很小心的避開掉入 Flash vs. AJAX 的二元邏輯內,相反的,他儘量持平的看待Flash在RIA應用上的發展現況與潛力。基本上他大部份的觀察我都同意。(comment 的部份更是有趣,不過很高興那裏的人比slashdot溫和許多,沒有那麼多 anti-flash 的基本教義派)
下面是幾段擷錄。
...and one of the main things was obviously the ability to maintain state....
Aral quite rightly mentioned that what people are starting to do now using AJAX, Flash developers were doing 3-4 years ago.
As such, the Flash developer community had learnt a lot from their early mistakes, the same mistakes AJAX developers are making now. Also the Flash client and server technology is a good few years ahead of the AJAX community...
It struck me that Aral was coming at things from exactly the same angle as me, wanting to build more usable applications, separating data from presentation and behaviour etc. He was just using a different tool to achieve the same goals....
整篇文章的重點大至有幾個:
-AJAX現在試者想做的事(即時傳資料、不需refresh頁面等等),在flash裏已經有兩三年的歷史了(畢竟flash是 fat client, 整個的運作型態跟html page有根本性的不同,要做到這些事是很容易的)
-AJAX的開發者現正犯當年flash developer犯過的錯。這也是很正常的情況,每當有新技術、新玩具出時,工程師總會在這波hype下濫用這些東西,就跟當年flash剛紅時每個網站都有flash開場動畫,而user也總是先找skip intro是一樣的道理,相信Ajax也會在未來一兩年經歷同樣的過程,然後工程師們就會回歸理性與基本面,開始從usability 的角度來應用技術,而不是 "just because we can".
-不論用AJAX或Flash RIA,目地都是希望讓web application更好用,進而實現 web as an application platform 的夢想(Sun聽到一定會樂死,只可惜前端用的都不是java啊),而就目前這個時間點來看,Flash實現這個夢想的 capability是比較高的,尤其當 mxml 逐漸成熟並能用更便宜的成本取得時,這個趨勢就會更明顯。
不過請注意上述是專指 "application" 這個context, 如果回到一般的content-based 的網站(例如新聞網站),我也是認同還是用 html + css + javascript才是王道。
| by admin

flash 8 提供 Bitmap API後,出現這類型 game其實是遲早的事,今天就看到一個。
遊戲位址
吃飽飯玩了一下,雖然畫面普普(畫質可說是非常的糟,非常有1992年左右原版時的感覺
),同時速度非常慢,遊戲一開始後幾乎是立刻吃光 cpu 資源,meter直衝 100%(相較比起來台灣 flash 遊戲之神maso兄做的廖添丁玩起來就順暢多了,只是不知道flash 8 出來後有沒有改版的計畫?),不過整體把玩感覺還是很不賴,至少 game engine 跟 即時貼圖系統 都做的很完整,map部份也處理的不錯。
事後打開程式碼看了一下,結構非常的嚴謹,大部份都遵守 80*15法則,將功能切成一個個的function,並且只放在第1格上面,一看就是內行人的寫法,想必日後要擴充或維護都會非常容易。
只是從這例子也可以發現一個事實,flash 的 content終究是在一個速度並不怎麼樣的vm上執行,因此即使現在有了比較完整的API,也還是不能改變「速度」這個致命傷,JVM早期也有同樣的問題,但經過十年的改良,現在 5.0終於號稱可以跟 native C/C++ code 一樣快,所以照這個時程推下去,大約在 Flash 12.0時或許我們就會有神速的 flash VM了吧
note: 前陣子看到有人在ipod 上玩doom, 也有人提到可在 sony psp 上面裝 flash player, 那是不是可以把這個doom搬到psp上玩啊?
| by admin
這標題聽起來很聳動,不過對我而言是挺有效。
經過這幾年的實驗,我發現聽的音樂類型對coding順暢度有很正面的影響,其中以 jazz 最有效,而 jazz 中又以鋼琴獨奏或trio的型式效果最好。
過去幾年凡是要做複雜的coding工作時,通常不二的選擇就是 Keith Jarret

Keith Jarret的獨奏鋼琴聽久了似乎可以安定腦波,有助延伸思路或預見許多原本不會發現的潛在地雷(bug),以往許多神奇的架構規畫或implementation就是這樣不經意想出來的。
今天又重整了一次 iTune 的 folder,順便列一下常聽的 Keith Jarret 專輯:
At The Blue Note I Friday, June 3rd 1994 1st Set
At The Blue Note II Friday June 3rd 1994 2nd Set
At The Blue Note III Saturday, June 4th 1994 1st Set
At The Blue Note IV Saturday, June 4th 1994 2nd Set
At The Blue Note V Sunday, June 5th 1994 1st Set
At The Blue Note VI Sunday, June 5th 1994 2nd Set
Bye Bye Blackbird
J.S.Bach Goldberg Variations
Standards Live Vol.1
Standards Live Vol.2
Sun Bear Concerts - Encores
Sun Bear Concerts - Kyoto
Sun Bear Concerts - Nagoya
Sun Bear concerts - Osaka
Sun Bear Concerts - Tokyo
Sun Bear Concerts Piano Solo- Sapporo
The Koln Concert
The Melody At Night, With You
Up For It
另外更早之前也常聽 Thelonious Monk 的東西,也是有者神奇安定功效的音樂,這兩年則又發現另一個天才型的樂手 Brad Melhdau (這是在紐約時某東村小唱片行老爺爺硬塞給我的片子,結果一聽就上癮),可惜他還太年輕專輯沒幾張,希望未來能活久一點就可以源源不絕的出片...
嗯 這篇就放「軟體工程」裏吧,畢竟大腦正常運作是軟體工程內最重要的一環啊
| by admin

Jesus Holy Christ ! waht a day !
今日真是好消息不斷,其中一個是 FMS 2開放public beta了。
下載位址
這個beta實在誠意十足,因為:
-它是完整版
(fully-functional without any limitation)
-不限頻寬,最高連線數5000人
(Unlimited bandwidth and up to 5,000 simultaneous connections)
唯一的限制就是會在11月18日過期,但這不是啥大問題,屆時正式版肯定也上市了。
Jeff Beck有張精典專輯叫 blow by blow,這就是今天到目前為止的感覺吶
| by admin
Previous Posts