Home > Robotlegs > RobotLegs AS3 v0.2: ReversiblePants

RobotLegs AS3 v0.2: ReversiblePants

RobotLegs AS3 is a Dependency Injection Driven MVCS Framework for Flash and Flex inspired by PureMVC.

RobotLegs AS3 v0.2 (codename ReversiblePants) is up on GitHub:

Now with DI/IOC and Reflection adapters instead of direct dependencies on the SmartyPants-IOC framework. By providing your own adapters you can run RobotLegs off a DI/IOC/Reflection framework of your choosing.

More info (and updated demo):

http://shaun.boyblack.co.za/blog/2009/04/16/robotlegs-an-as3-mvcs-framework-for-flash-and-flex-applications-inspired-by-puremvc/

I should point out that RobotLegs AS3 is still very much a proof-of-concept framework. It works, but it’s architectural design might change a bit on the road to v1.0. That said, I’m using it underneath a large-scale, real-world project, and it’s working great!

  • Benoit, you should join the discussion group (no pressure though!): http://groups.google.com/group/robotlegs
  • yeh, and I don't think that "bind" is the best word to use either (due to possible confusion with Flex Binding)..
  • Benoit Jadinon
    I see what you mean, while the first uses smartypants arguments order,
    the second one looks better when 'read' like :
    "do a bind on value when asked for the class"
    but I think this is all just because of the arguments names (borrowed from smarty)
    if you rename them to something like :
    bindValue( classToBind:Class, bindedValue:Object)
    it doesn't seem that problematic anymore...
    well, it wasn't that much of a deal anyway ;)
  • Hi Benoit,

    Thanks for the feedback. I'm not entirely happy with the Injector abstraction though.. I think I might have got it backwards! For example (as it currently is):

    bindValue( whenAskedFor:Class, useValue:Object, named:String = null )

    Maybe it should be:

    bindValue( useValue:Object, whenAskedFor:Class, named:String = null )

    I would have liked to keep the DSL/fluent interface that SmartyPants uses, but then it would be a lot more work for anyone wanting to write their own adapters.

    What do you think? Should the parameter order stay as it is or be switched around?

    Cheers,
  • Benoit Jadinon
    I like the new DI abstraction, it actually makes the whole thing much easier to use, it feels more structured. your framework is groing on me ! I like not having to cast anything anymore...
    I'm trying to write some sort of a template that could be used as base for my next websites, with swfaddress and such...
blog comments powered by Disqus