both mvcExpress and mvcExpress live updated to version 1.4.0!
along with big pile of performance improvements and couple of bug fixes one important modular programming change was introduced.
After working with couple multi-module projects and samples I have to admit that my initial set of functions does not work good enough.
In the nutshell – modular programming features have same problems as static/public variables and function has: everyone can send anything everywhere, you loose track of what is doing what very fast, it is very hard to remove or refactor used scopes, and overall – you loose control.
To fix that I added 2 new functions to module classes and Command’s:
registerScope(scopeName:String, messageSending:Boolean = true, messageReceiving:Boolean = true, proxieMapping:Boolean = false):void
From now on if you want to use module to module communication or proxy mapping and injection via scope – you will have to register it first. This gives much better control over what you want your modules to do, you can create modules to fit certain roles as you con control weather module can only send messages or only receive, or both, and if module can share data using specified scope or not.
It looks like scope registration solves all mentioned problems regarding modular features!
You can download it from gitHub.
mvcExpress live beta is out!
mvcExpress live is designed to allow creating real time MVC architecture application in flash, like action games, or anything that needs rapid continuous code execution, rendering, animating, even just as3 code batching.
It adds to MVC new actor that I call for now – Engine. This actor deals with two new class types : Process and Task.
Here is short overview of what mvcExpress live is all about:
Continue reading mvcExpress live beta released
Just wanted to share little diagram of mvcExpress LIVE prototype I am currently working on.
In the nutshell : mvcExpress LIVE = mvcExpress + game engine.
Continue reading mvcExpress LIVE sneak peak
mvcExpress version 1.3.1 released
this is important milestone for framework, as I consider it now as feature full framework.
This is feature list:
- ModuleCore – simplest module implementation.
- ModuleSprite, ModuleMovieClip – convenient modules extending Sprite and MovieClip.
- Based on Proxy pattern.
- Proxies can be mapped to class or interface, and optional name.
- Proxies automatically injected into commands, mediators and other proxies.
- Proxies can be retrieved with function. (not only injected)
- Lazy proxy instantiation option.
- Based on Mediator pattern
- 2 options to mediate the view.( map then mediate, or mediate directly).
- View can be mediated as interface or superclass.
- Based on Command pattern
- Can be mapped, and executed with messages.
- Can be executed directly.
- Build in command pooling (optional)
- Custom, string based messaging system. (very fast, faster then signals)
- Messages can be sent from modules, commands, proxies, mediators.
- Messages can be handled in mediators.
- Messages can trigger commands.
- Module to module communication through scope.
- Module data sharing with other modules through scope.
- Option to enable circular dependency injection.
- Automatically detects flex, view objects will be mediated only after ‘onCreationCopmleate’
I have 2 priorities now regarding mvcExpress:
- First and most important – writing learning material for mvcExpress. I have 2 ideas – written tutorial and video tutorial. Most likely I will end up making both. (I will also prepare workshop out of this material.)
- Secondly, I will start working on “mvcExpress LIVE” fork. This will be separated mvcExpress extenuation, that will add E to MVC. E stands for Engine. Engine will be implemented by using Processes and Tasks, and mainly dedicated to handle real time action games.
I also have interesting idea making WorkerModule, it will allow using multithreading with modules, and will hide worker implementation.
mvcExpress v 1.3.1 can be downloaded from gitHub :
Last feature added to mvcExpress v1.3, (and very exiting one), is command pooling!
Continue reading Command pooling feature (v1.3)
In mvcExpress 1.3 release I am also want to tie up some loose ends.
Continue reading more mvcExpress 1.3 features
next modular programming feature added is – module to module data dependencies.(or data sharing)
Continue reading Module to module data dependencies
step by step I am approaching release of mvcExpress v 1.3
This is extremely important milestone for me as it will pack all core modular programming goodies I planed for this framework.
Today I want to present one of them: module to module communication.
Continue reading Module to module communication feature
I want to present mvcExpress framework at FITC in Amsterdam! (Presentation title : “Next step in as3 framework evolution”)
It is great opportunity to introduce framework to Flash community!
This year it is possible to vote for presentations you want to see in FITC.
That’s there I need your support!
Please put 3(max possible) of your votes for my presentation to this link. (You have total of 10 voting points.)
I want to present my vision of modular programming I want to see in mvcExpress framework.
I want to achieve 3 goals:
- ability to aggregate one module in another easily. (v1.0)
- ability to send a message from one module to another easily. (v1.1)
- ability to share proxies across modules easily. (v1.2)
Continue reading mvcExpress modular programming features