Flash圖表解決方案 Finger Chart
Finger是UNIX系統(tǒng)中用于查詢用戶情況的實用程序,UNIX系統(tǒng)保存了每個用戶的詳細(xì)資料,包括E-mail地址、帳號,在現(xiàn)實生活中的真實姓名、登錄時間、有沒有未閱讀的信件,最后一次閱讀E-mail的時間以及外出時的留言等資料。當(dāng)你用Finger命令查詢時,系統(tǒng)會將上述資料一一顯示在你有終端或計算機上。
Finger Chart 是一個輕量級的基于Flash技術(shù)開發(fā)的圖表解決方案(未來考慮擴展到HTML5平臺),基于LGPL協(xié)議開源。圖表包括常見圖表類型:線圖,柱圖,條圖,餅圖,區(qū)域圖,散點圖,氣泡圖等;Finger的應(yīng)用目標(biāo)是:Web應(yīng)用和移動應(yīng)用,保持輕量級和較小的資源占用,以在有限的硬件資源下獲得平穩(wěn)流暢的運行。
Finger包含3個開發(fā)主體:
基于AS3開發(fā)的圖表展現(xiàn)
基于JavaScript實現(xiàn)的圖表HTML嵌入
針對服務(wù)器端代碼開發(fā)的類庫(基于使用者的貢獻)
Finger具備如下的主要特點和設(shè)計初衷:
1、輕量級:圖表基于純ActionScript開發(fā),并不斷得到優(yōu)化,使得圖表可以保持較小的體積和較小的資源占用率。
2、易用:對前端工程師而言,使用封裝的JavaScript類庫讓您可以很方便的將圖表嵌入HTML。而對于后端程序員,使用針對服務(wù)器端代碼開發(fā)的類庫讓您可以更方便的與項目代碼集成。
3、靈活的外觀定義方式:如果您對Finger默認(rèn)的外觀不滿意,大可以進行自我定制。Finger的外觀使 用了兩套彼此協(xié)作的機制:CSS和Skin,其中CSS使用網(wǎng)頁通用的樣式表屬性進行描述,而Skin部分則允許您通過Flash Pro進行創(chuàng)建和修改。結(jié)合這兩種方式,將給您的外觀創(chuàng)建帶來極大的靈活性。
4、允許載入外部插件:您可以基于約定的接口創(chuàng)建一個插件,編譯為單獨的SWF文件,并在圖表中載入,與圖表協(xié)同工作。這種方式將讓您在不需修改基本功能的條件下,完成一些額外的功能。
5、可擴展的架構(gòu)設(shè)計:Finger基于一個可擴展的架構(gòu)來實現(xiàn),各個圖表組成部分都得到抽象并與具體實現(xiàn)相分離,圖表則基于工廠模式來進行組裝,在此基礎(chǔ)上擴展其它類型的圖表將會更加方便。
6、可視化組件支持:未來版本將針對Flash Pro創(chuàng)建一個組件庫,允許通過Flash Pro輕松應(yīng)用圖表組件并綁定數(shù)據(jù)源。
小結(jié):從一個協(xié)議的角度來看,Finger服務(wù)器有一個知名的端口79??蛻魧@個端口做一個主動打開,然后發(fā)送一個在線的請求。服務(wù)器處理這個請求,把輸出發(fā)送回去,然后關(guān)閉連接。查詢和響應(yīng)都是采用NVT ASCII,類似于我們在FTP和SMTP協(xié)議中所看到的。但是本文是基于圖表展現(xiàn)的。
【編輯推薦】