<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    gembin

    OSGi, Eclipse Equinox, ECF, Virgo, Gemini, Apache Felix, Karaf, Aires, Camel, Eclipse RCP

    HBase, Hadoop, ZooKeeper, Cassandra

    Flex4, AS3, Swiz framework, GraniteDS, BlazeDS etc.

    There is nothing that software can't fix. Unfortunately, there is also nothing that software can't completely fuck up. That gap is called talent.

    About Me

     

    AS3-DI-Metadata

    What a Metamess

    Spring Actionscript, Dawn, SmartyPants, Swiz, Spicelib (used by Parsley) and SwiftSuspenders (used by Robotlegs) perform Dependency Injection.

    Moreover they can all perform automatic DI by parsing class metadata. It would be grand if the common DI related metadata tags could be standardised. That way we really could write code that is decoupled from any particular framework.

    Injection by Type

    Dawn, Swiz, Spicelib, SwiftSuspenders, SmartyPants: [Inject] (above property, setter or method)
    Spring AS: [Autowire] (above property, setter or method)

    Most popular

    [Inject] by 5

    Notes

    [Inject] is clear and simple and used by almost all of the libraries. It also directly correlates to @Inject from the JSR-330 Dependency Injection for Java specification. Let’s use it.

    Injection by Name/Id

    Dawn, SwiftSuspenders, SmartyPants: [Inject(name=“SomeName”)] (above property, setter or method)
    Swiz: [Inject(source=“SomeName”)] (above property, setter or method)
    Spicelib: [Inject(id=“SomeName”)] (above property, setter or method)
    Spring AS: [Autowired(name=“SomeName”)] (above property, setter or method)

    Most popular

    [Inject(name=“SomeName”)] by 3

    Notes

    Since you can define default attributes best practice could be to leave out the attribute: [Inject(“SomeName”)]

    Constructor Injection:

    SwiftSuspenders: [Inject] (above class)
    Spicelib: [InjectConstructor] (above class)
    Swiz, Spring AS, Dawn: ?

    Most popular

    ?

    Notes

    I don’t see the need for an extra tag ([InjectConstructor]) when we could simply use [Inject].

    Object Lifecycle – Post Injection:

    Dawn, SwiftSuspenders, SmartyPants, Swiz: [PostConstruct] (above method)
    Spicelib: [Init] (above method)

    Most popular

    [PostConstruct] by 4

    Notes

    @PostConstruct is used in Java for the same purpose. Let’s use the most popular, established one.

    Object Lifecycle – Teardown:

    SwiftSuspenders, SmartyPants, Dawn: none?
    Swiz: [PreDestroy] (above method)
    Spicelib: [Destroy] (above method)

    Most popular

    Notes

    @PreDestroy is used in Java for the same purpose. Let’s use the most familiar, established one.

    Factory/Provider:

    SwiftSuspenders, SmartyPants, Swiz: none?
    Dawn: [Provider] (above method)
    Spicelib: [Factory] (above method)

    posted on 2010-11-12 14:44 gembin 閱讀(535) 評論(0)  編輯  收藏 所屬分類: ActionScript3

    導航

    統計

    常用鏈接

    留言簿(6)

    隨筆分類(440)

    隨筆檔案(378)

    文章檔案(6)

    新聞檔案(1)

    相冊

    收藏夾(9)

    Adobe

    Android

    AS3

    Blog-Links

    Build

    Design Pattern

    Eclipse

    Favorite Links

    Flickr

    Game Dev

    HBase

    Identity Management

    IT resources

    JEE

    Language

    OpenID

    OSGi

    SOA

    Version Control

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    free counters
    主站蜘蛛池模板: 国产精品美女自在线观看免费| 日韩版码免费福利视频| av无码东京热亚洲男人的天堂| 亚洲欧洲av综合色无码| 四色在线精品免费观看| 亚洲欧美一区二区三区日产| 免费观看的a级毛片的网站| 亚洲综合一区无码精品| 最近中文字幕免费完整| 亚洲伊人久久大香线焦| 国产h视频在线观看网站免费| 亚洲成人福利在线| 免费被黄网站在观看| 国产偷国产偷亚洲清高APP| 免费h成人黄漫画嘿咻破解版| 免费国产草莓视频在线观看黄| 亚洲女同成人AⅤ人片在线观看 | 免费人成在线视频| 亚洲成a人片在线不卡一二三区| 又色又污又黄无遮挡的免费视 | 亚洲色丰满少妇高潮18p| 成人免费视频国产| sss日本免费完整版在线观看| 亚洲色成人中文字幕网站| 99久久99久久精品免费观看| 亚洲1区1区3区4区产品乱码芒果| 久久久www成人免费毛片| 草久免费在线观看网站| 亚洲爆乳精品无码一区二区三区 | 久久精品私人影院免费看| 亚洲91精品麻豆国产系列在线| 国产在线播放免费| 日本黄色动图免费在线观看| 亚洲免费视频网址| 亚洲视频人成在线播放| 57pao国产成永久免费视频| 亚洲aⅴ无码专区在线观看春色| 亚洲日韩精品一区二区三区无码 | 亚洲精品无码久久久久APP| 亚洲宅男天堂在线观看无病毒 | 免费无码又爽又刺激毛片|