얼사마 2010. 11. 1. 11:14


Objective-C style의 이벤트 핸들러.

기능들을 살펴보자면,

  • Work in static or instantiated mode;
  • Can specify the number of arguments to dispatch;
  • Can change these arguments on the fly" (in Run-Time);
  • Can remove all NResponders;
  • Can specify the number of replies;
  • Can ordinate the replies;
  • Can associate each listener with one target;
  • Can have a delay to the next dispatch;
  • Can pause or resume the replies;
  • Can change all this attributes on the fly" (in Run-Time);
  • Can join to native Event API of Adobe® Flash® and continue to use all this features;
  • Can instantiate and control each NResponder without change the others.

  • FeatureEvent API (Adobe® Flash®)Signals (Robert Penner)NResponder (Diney Bomfim)
    Used without instance No No Yes
    Used with instance Yes Yes Yes
    Specify number of dispatch arguments No Yes Yes
    Dynamic dispatch arguments No Yes Yes
    Change dispatch arguments in Run-Time No No Yes
    Remove all No limited to instance Yes
    Specify a delay time No No Yes
    Set the number of replies No Just 1 Yes
    Ordinate Yes Yes Yes
    Can associate with a target Yes only NativeSignal Yes
    Can pause without remove No No Yes
    Can stop propagation Yes No Yes
    Change attributes in Run-Time No No Yes
    Garbage Collect only weak references No Yes

    Test AreaEvent API (Adobe® Flash®)Signals (Robert Penner)NResponder (Diney Bomfim)
    Size Added to SWF 350 bytes2.4 KB + 3.3 KB3.4 KB
    Memory of Class 4.5 KB2.7 KB + 3.3 KB3.2 KB
    Memory of Each Instance 88 bytes28 bytes + 24 bytes52 bytes
    Performance to Add(1) 1.9 sec.2.2 sec. | 2.6 sec.3.7 sec.
    Performance to Dispatch(2) 2.4 sec.2.7 sec. | 4.8 sec.1.8 sec.
    Performance to Remove(3) 0 sec.0 sec. | 0 sec.0 sec.

    사용법도 꽤 심플한 편. http://db-in.com/frameworks/nineveh/doc/

    개인적으로... js가 js가 아니고, as가 as가 아닌 것은 좀 꺼리는지라...




    얼사마 2009. 12. 1. 16:10




    얼사마 2009. 7. 21. 10:32