Gaia Frameowrk

0 意見

2009-05-19_125947.jpg

Gaia是給Flash開發的Framework,不像PureMVC或Cairngorm的MVC架構(Model、View、Controller),反是提供Flash骨架生成,可快速製作Flash-base網站,利用site.xml管理所有頁面及架構,條列清楚且容易修改,且直接支援SWFAddress、SWFObject,能自動生成deeplink及SEO(Search Engine Optimization),對常接觸Flash網站開發的設計師來說,Gaia絕對是好用的工具。

備註:Gaia是給Flash IDE的擴充元件,需使用Extension Manager安裝,請參考官網教學

2009-05-19_125910.jpg

Gaia site:http://www.gaiaflashframework.com/

Demo:http://www.tmrw.co.uk/blog/gaia-framework-demo-site/



[網站推薦] mogera

0 意見

2009-05-15_132850.jpg

日本的Flash game網站,收錄許多有趣的投稿,有些遊戲是給手機的,有裝Flash lite的玩家一定要玩玩看

2009-05-15_133144.jpg

網站連結:http://mogera.jp/



ThunderBolt 輕量級的Logging Framework

0 意見

2009-05-14_130158.jpg

上次有介紹過Flex的Logging Framework,這次來介紹ThunderBolt,ThunderBolt是第三方的Logging framework,使用簡單且相容於Flash、Flex及AIR,顯示的方式是透過FireBug(Firefox add-on),在AIR的環境則是透過ThunderBoltAS3Console顯示(AIR檔,可擷取flashlog.txt文件,平常也可以用來追蹤trace),且本身有支援Flex的LoggerTarget,簡單來說,我們能把Flex的TraceTarget換成ThunderBoltTarget,讓Flex Log顯示在FireBug上。

語法請參照:

AS3:http://code.google.com/p/flash-thunderbolt/wiki/ThunderBoltAS3

AS2:http://code.google.com/p/flash-thunderbolt/wiki/ThunderBoltAS2

Google Code:http://code.google.com/p/flash-thunderbolt/

WS-Blog:http://www.websector.de/blog/category/thunderbolt/



[教學] Flex Logging Framework

1 意見

介紹一個Flex提供的Logging framework,這是原生的功能,API可在mx.logging下找到,用起來跟trace差不多,最大的不同是Logging有分成以下五層:

  1. DEBUG:紀錄Flex內部活動。這在應用程式除錯時最為有用
  2. INFO:紀錄一般資訊
  3. WARN:當應用程式遇到問題時紀錄訊息。這些問題不造成應用程式停止運作,但可能會導致近一步的錯誤
  4. ERROR:當重要的服務無法使用,或是限制應用程式的使用的狀況發生時加以紀錄
  5. FATAL:當導致應用程式失敗的事件發生時加以記錄

愈高層的資訊愈完整,例如WARN就包含WARN、ERROR跟FATAL,而FATAL就只會顯示FATAL

程式範例

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="main();">
<mx:Script>
<![CDATA[
import mx.logging.ILogger;
import mx.logging.Log;
import mx.logging.targets.TraceTarget;
import mx.logging.LogEventLevel;

private function main():void
{
initLogging();
}

private function initLogging():void
{
var logTarget:TraceTarget = new TraceTarget();
var myLogger:ILogger = Log.getLogger("idv.gd.project.MyClass");

var myLogger2:ILogger = Log.getLogger("idv.gd.project.MyClass2");

logTarget.filters = ["idv.gd.project.*"];

//指定要聽 level
logTarget.level = LogEventLevel.ALL;

//開啟顯示資訊
logTarget.includeLevel = true;
logTarget.includeCategory = true;
logTarget.includeDate = true;
logTarget.includeTime = true;

//將Target加入Log
Log.addTarget(logTarget);

//logger送出訊息,由低至高,高層會顯示低層資訊(error: error & fatal)
myLogger.debug("myLogger debug");
myLogger.fatal("myLogger fatal");

myLogger2.info("myLogger2 init");
}

]]>
</mx:Script>
</mx:Application>

首先使用靜態方法取得ILogger,getLogger(Category),Category是用來過濾用,一般的命名原則同package,雖然亂取也可以但自己別搞混了,再來指定要顯示的LogTarget,預設是提供traceTarget,也可自己改寫,像是寫一個能記錄在文字檔或是回傳給伺服器的都行,接著給logTarget指定filter,filter用來過濾要聽的Category Name,預設為全都聽,可用*字元,比較特殊的是Logging會拆解格式,寫idv.gd.project.MyClass就只會聽到MyClass,而idv.gd.project.*則聽的到MyClass、MyClass2,另外,TraceTarget也可指定要顯示的資訊,包含Level、Date、Time、Category,指定完後記得加給Log

最後在要顯示資訊的地方用Logger指定Level即可,可設定要顯示的內容,時間Logging會自動加上



AS3 Performance

0 意見

之前在7yue's weblog看到的文章,可做為開發時的參考

2009-05-06_130224.jpg

單元測試:http://www.gskinner.com/blog/archives/2009/04/as3_performance.html

看完的結論就是drawPath跟vector確實可改善效能,而Array則不管型別都一樣慢,不過令人在意的是Static Explicit,在MVC的架構很常用呢



Degrafa 增強的Flex圖形Framework

2 意見

2009-05-06_123740.jpg

Degrafa提供更進階的圖形繪製能力,可用來彌補Flex的不足,能使用mxml語法繪制圖形,也能提供更進階的css樣式及自定樣式,另外也能撰寫簡單的repeat跟程式

Google code:http://code.google.com/p/degrafa/

Degrafa home:http://www.degrafa.org/index.html

寫一個簡單範例,用Degrafa做出標籤頁的效果

2009-05-11_130113.jpg

觀看範例

原始檔下載