Solicitation of Features for 1.1 Release

In preparation for the 1.1 Release I would like to solicit inputs for features that you would like to see (depending upon the request some may be pushed to further releases).

Currently I am looking at 4 main features: 1) Pluggable Controllers, 2) Hierarchical Controllers, 3) Better Decoupling of Views, and 4) Factories for event and controller creation.

Pluggable Controllers: I am not sure how useful this feature would be but it would only require that Flex mxml files implement a View interface with a setController method.

Hierarchical Controllers: One side effect of having the handler for an event in the same class as the event itself is that you cannot have multiple controllers acting on the same event which is especially useful for having the main application view handle an event in addition to the active flex view in a view stack. Currently you can accomplish this by having the event handling dispatch another event. What I am thinking about is providing the option for the event to not handle itself and allow the controller to handle it (this follows the more traditional Command pattern used in MVC frameworks). Since you override the base controller anyway this is easy to do. You could also choose to bubble the event up to the top level controller.

Better Decoupling of Views: In some cases in your views you cannot bind to a data structure in your model or you need to perform a more complex operation than binding along will solve. In this case, the event handlers are coupled to the view in the sense that if something changes on the view (like their names), the event handler will have to change as well. If your view implements the View interface then the event handler can call view.update("command",...) with variable arguments to do what you want. If this limited to view only manipulations then this could be considered acceptable since we leave view only logic with the view anyway for Flex GUI events. However, this capability is one I am unsure about including unless their is demand for it.

Factories for Controllers and Events: Use Factory methods with String Identifiers to create your controllers and events so their is no dependence on their constructors. The factories would read the actual class names from an XML file and any other info needed for construction. At some point this could turn into a complete dependency injection framework like Spring but for the client.

Comments/Suggestions?

Comments
Franklin Pulhe's Gravatar We have been using this now and like the fact that it allows you to get to the application from anywhere and fits our coding method better. We did not try Cairngorm as we were looking for something more along these lines. I am not sure about the additions you are considering. Maybe I just cannot see their value directly at this point. Anyway, we will be looking back for updates. Thanks for the work. One thing I would request is a better demo of the product, but we did ok without.
# Posted By Franklin Pulhe | 7/29/08 10:47 AM
Bill's Gravatar Just downloaded 1.0 a couple of weeks ago. I like the idea of hierarchical controllers.
# Posted By Bill | 8/14/08 6:11 PM
Christopher Dean's Gravatar Thanks for the input. I have not forgotten just been very busy at work to add additional features. Hopefully in the next week or so I can get back to this and add some new features. I am also exploring using mxml tags as well to make it easier for non-actionscript developers.
# Posted By Christopher Dean | 10/2/08 10:45 AM
Ray Ban's Gravatar Storage containers . l'ensemble des ://www.ray-banfr.net/ hommes, ray ban Store durante ligne Choisissez n't deux impressionnants traitements de fenêtre à utiliser durante général s'avère être durante task. Ils sont incapables, mais seulement dans n't deux paires de lunettes élégantes et aussi déposer tous l'ensemble des cachette avec eux de décider. L'ensemble des hommes et l'ensemble des femmes, l'ensemble des lunettes de schedule de traitement vraiment besoin d'utiliser and du schedule de traitement défini dans leurs propres lunettes. C'est l . a . raison storage containers . laquelle n't effet négatif veiller à ce que vous utilisez n't schedule de traitement des yeux à s'habiller dans l'ensemble des partners compatibles. Mais avec l'aide de ray ban s'avère être l . a . plupart du schedule de traitement du promote partie très occupé de changé.

Cuando votre opticien principale ne tient pas nécessairement Lunettes ray ban, n'est pas gêné, il s'avère être loin d'être n't avantage lrage, que vous êtes dans une spot à des personnes qui sont l . a . demande Word wide web. Il s'avère être assez facile d'obtenir des individus sur The web, il vous suffit de choisir the cadre de chacun de votre schedule de traitement storage containers . vivre chaque paire dans the bas du dos des lunettes de soleil ray ban regarder quelques semaines. ray ban an important the choix quant à l'utilisation de lunettes polarisées storage containers . l'ensemble des partners à l'intérieur de l . a . couverture installée sur l . a . lumière du soleil. Storage containers . cette raison, il suffit de leur rappeler d'utiliser seulement storage containers . quelques verres à much time terme du schedule de traitement ou de lentilles cornéennes, ne pense pas que l . a . capacité de porter des lunettes, the and snazzy et accrocheur storage containers . être élu. ray ban s'avère être une preference importante de lunettes, qui ze réunissent habituellement durante promote cas pas toute l . a . personne difficile équipée.
# Posted By Ray Ban | 6/7/12 2:09 AM
BlogCFC was created by Raymond Camden. This blog is running version 5.5.006. | Protected by Akismet | Blog with WordPress