Saladin’s Blog

FDT (for Eclipse)

Posted on: 1월 16, 2008

 

이클립스에 Flash SDK를 장착시켜 구동하는 플러그인이다. 이미 3.0도 지원하는 킷이 나와있다고 함 

자동화가 강해 편리할 것 같지만 웬지 제 멋대로 이것저것들을 바꿔버릴까 부담스럽고, 유연한 인터프리팅 코딩과 아이디어를 바로 적용하는 즉흥성이 장점인 ActionScript의 특성을 잃게 할 수도 있을 것 같다. 

하지만 메모리관리가 엄격해지고 클래스 계층구조가 확실해진 3.0환경에서는 괜찮겠다는 생각도 든다.  특히 뭐 하나를 제대로 하려면 Event와 EventDispatch클래스를 상속받아 사용자 정의 이벤트 프로시져를 반드시 작성해줘야하는데, 프로그래머가 3.0의 이벤트 구조를 이해하는 정도에 따라 생각보다 간단치 않은 작업이다.

 

예를 들면 이렇다.먼저 이렇게 사용자 정의 이벤트 클래스를 만들어준다.
아래 코드는 실제 RSS문서로드를 마쳤을 경우를 가정한 이벤트이다.

 

package classes.handlers.events
{
 import flash.events.Event;
 
 public class loadCompleteEvent extends Event
 
{
  public static const RSS_LOAD_COMPLETE:String = “RssLoadComplete”;
  
  public var success:Boolean;
  
  private var _data:Object;
  
  public function loadCompleteEvent(type:String, inData:Object)
  {
   _data = inData;
   super( type, bubbles, cancelable );
  }
  
  public function get data():Object
  {
   return _data;
  }
  
  public function set data( value:Object ):void
  {
   _data = value;
  }
 }
}

그리고 나서 일반적인 핸들러클래스를 정의해준다. 실제 기능들을 스위칭해주는 상위클래스이다.

package {

import flash.events.Event;
import flash.events.EventDispatcher;

//바로 여기서 EventDispatcher를 상속받는다.

public class rssNewsHandler extends EventDispatcher {
.
private function method():void{
    .
    .
    // 바로 이 시점에서 이벤트를 Call할 수도록 이벤트를 등록한다.
   dispatchEvent(new loadCompleteEvent(loadCompleteEvent.RSS_LOAD_COMPLETE));
}
.
.
}

 

마지막으로 최종적으로 기능을 사용하는 클래스인 root클래스에 이런식으로 사용하면 된다.

var ex:rssNewsHandler = new rssNewsHandler ();

ex.addEventListener(loadCompleteEvent.RSS_LOAD_COMPLETE, fnComplete);

public function fnComplete(e:loadCompleteEvent){

   trace(“Event OK!!!!”);

}

따라서 이런 경우 클래스 템플릿 형식으로 만들어 묻어두면 두고두고 이벤트를 만들때 중복작업을 줄여주는 역할을 할 수 있을 것 같다. 그냥 이런것도 있다는 것을 염두해두는 것도 나쁘지 않을 것

Advertisements
태그: ,

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중

일자별 보기

1월 2008
« 12월   2월 »
 123456
78910111213
14151617181920
21222324252627
28293031  

최근 사진

%d 블로거가 이것을 좋아합니다: