PureMVC explained in a simple manor

Whatever you do, don't look at the diagram on PureMVC's website. It will just confuse the hell out of you.
I'm about to explain PureMVC as I understand it in the simplest manor. If my explanation is incorrect, let me know so I can correct it.
[insert marketing about how great PureMVC is here]. So you have the "model" the "view" and the "controller". Controller's do stuff, the model is stuff, and the view shows the stuff. PureMVC is just a way to orchestrate all that... well... stuff! The bases of how that happens is by sending "notifications." A notification in PureMVC is pretty much like an event. You send these "notifications" from two places, the "model" through something called a "proxy" and the "view" with something called a "mediator." When these notifications get sent out, the "Controller" catches them (and sometimes other mediators catch them too) and executes a "command." So the "controller" is the go-between the two. This structure is called a "broadcast" or an "observer" pattern. Wow, I'm using a lot of quotes here. Basically notifications are broadcast, whereas in flex, they just bubble on up the ladder.
The "Facade" is just something that kinda sits above it all. Now the "mediator" is allowed to control things relating to how the view is displayed, which view is displayed etc. But any business logic happens in the "command" which is the controller. You can still use regular events too... but only between the view and the mediator. Then you'll want to send a notification.

Here's a quick example. Let's say you want to "add a user" from a view. You would create the user object, add it to the body of a notification, send that notification. The application facade knows which controller these notifications go to (because you tell it). The command calls the proxy (remember that the proxy is how you interact with the model) and tells it to add the user. The proxy sends a notification when this is complete. The command might do an alert that says "user added". Make sense? Or did I totally confuse you?
To be honest, I'm really writing this to help me understand pureMVC better. On my next post, I think I'm going to do ASFusion's MATE.
Hopefully this paragraph will make things a little simpler when you go to look at some PureMVC examples.

Comments

Well a year later I come

Well a year later I come across this post. Yup thats how I 'got it' - what makes me laugh is the struggle to get 'there'. Damn coders and their pecularity of trying to explain a straightforward recipe in the most complex manner. Do you think would be famous if they used all manner of implements and techniques to describe how its possible to chop up an onion.

PureMVC coders wouldn't say : Get Onion, Put On Board Try {Chop} Catch { Error: Fingers In Way}, Stop Chopping.

btw got here because I'm damned if I can't get the TimerEvent.TIMER to fire

btw 'insert famous chef here'

btw 'insert famous chef here' got ommitted at: Do you think 'insert famous chef here' would be famous....

Well a year later I come

Well a year later I come across this post. Yup thats how I 'got it' - what makes me laugh is the struggle to get 'there'. Damn coders and their pecularity of trying to explain a straightforward recipe in the most complex manner. Do you think would be famous if they used all manner of implements and techniques to describe how its possible to chop up an onion. Get Onion, Put On Board Try {Chop} Catch { Error: Fingers In Way}, Stop Chopping.

btw got here because I'm damned if I can't get the TimerEvent.TIMER to fire

Thanks, I originally wrote

Thanks, I originally wrote that post to help myself understand WTF was going on. Once you break through that "twister" and understand this stuff, it's just freaking awesome. I'M ADDICTED TO PUREMVC!

Jonathan, Thank You! Your

Jonathan, Thank You! Your explanation was like a moment of pause inside a twister, providing just long enough of a moment to say 'hey, I just may be able to understand and maybe even use PureMVC in my lifetime'. It sure as heck beats being just another flying cow sucked up into that MVC twister.