Title: RE: [cfaussie] Fwd: How Mach II evolved (was: Best practice?

Great Read Sean, now BLOG IT!

I hated Mach-II at the start mainly because I *thought* its XML approach was just a gimmick and assumed it was bloatware (that I hated Fusebox 3 and assumed it was just the next version of it..) - hey I'm man enough to admit I was ignorant.

I looked deeper one day (bored I guess) and from that day on, I've had a love/hate relationship with it. Love its concept, hate its XML still hehehe but, its fine ass piece of work if you ask me and I'll be really curious as to see what you and the others do in regards to Blackstone! - where that roadmap huh! ..well.. Waiting!... :D

Now MossyBlog is constantly churning out "Did You knows" about the framework hhehe.

See, Hal Halms is a nice guy...jeez M@ you must feel bad now.. Like bordering embarassed heheheheheheheheheheh

So..
Damn..
Bored..

Scott.




> -----Original Message-----
> From: Sean Corfield [mailto:[EMAIL PROTECTED]]
> Sent: Friday, 17 December 2004 9:18 AM
> To: CFAussie Mailing List
> Subject: [cfaussie] Fwd: How Mach II evolved (was: Best practice?
>
> I was asked off-list for this story and, having sent it, was
> asked to post it to the list for everyone to heard the back
> story (M@, you should just tune out at this point since
> you're not a history buff :)
>
> So wind back to the early days of Fusebox 4 being developed.
> The decision had been made to use XML for configuration but
> it was still aimed very squarely at procedural programmers -
> really aimed at CF5 users despite the XML issue. Hal was very
> interested in CFCs however and what they could offer a
> framework so he started working on a concept he called Fusebox MX.
>
> Fusebox MX looked a *lot* like a cross between Fusebox 3 and
> Fusebox 4 but built with CFCs. index.cfm created a Fusebox
> CFC instance and asked it to 'do' a fuseaction (e.g.,
> home.determinePlanet). Circuits mapped to CFCs - the
> fuseaction home.determinePlanet mapped to calling the method
> determinePlanet on the CFC identified by the home circuit.
> It also had the concept of skins - layout methods that you
> registered with the framework which would be called
> automatically. It had a property manager, a plugin manager
> (and several of Mach II's plugin
> points) and a circuit manager (influenced by Fusebox).
>
> Remember we're talking about CFMX 6.0 with all the
> interesting problems that those early CFCs had.
>
> Not surprisingly, Hal hit a wall with Fusebox MX, both in
> terms of performance (trying to create the whole CFC
> structure on every
> request) and in terms of usability (because of "this" scope
> and no local variables and a number of other issues).
>
> Fusebox 4 continued on. Fusebox MX was effectively on hold.
> But Hal still wanted an OO framework using CFCs.
>
> CFMX 6.1 made that possible. By that point he'd recruited Ben Edwards
> - who had done the JSP / J2EE port of Fusebox 3 - to help him
> develop an OO framework from the ground up. Retaining some of
> the key ideas behind Fusebox MX (XML configuration, CFCs
> accessed via aliases) but, through Ben, adopting a completely
> new core approach: Implicit Invocation.
>
> Based on the same principles behind most desktop
> applications, implicit invocation takes an event-based
> approach to wiring an application together: you define
> handlers for events but you don't explicitly define a
> sequence of events.
>
> The result: Mach II. All CFCs from the ground up, a single
> XML configuration file. User code extends framework code -
> which is a classic approach for most OO frameworks. The
> circuit manager was gone and in its place we have listeners
> and filters. The plugin manager has remained mostly intact.
> HTML output is now managed by the framework using regular
> view files (Fusebox MX used display methods in circuit CFCs).
>
> I actually have a copy of the presentation that Hal gave at DevCon
> 2002 in the Community Suite and the SolarSystem sample app he
> wrote back then. All heavily marked with "do not
> redistribute". It's an interesting historical artifact tho'...
> --
> Sean A Corfield -- http://www.corfield.org/ Team Fusebox --
> http://www.fusebox.org/ Breeze Me! -- http://www.corfield.org/breezeme
>
> "If you're not annoying somebody, you're not really alive."
> -- Margaret Atwood
>
> ---
> You are currently subscribed to cfaussie as: [EMAIL PROTECTED]
> To unsubscribe send a blank email to
> [EMAIL PROTECTED]
> Aussie Macromedia Developers: http://lists.daemon.com.au/
>

---
You are currently subscribed to cfaussie as: [email protected]
To unsubscribe send a blank email to [EMAIL PROTECTED] Aussie Macromedia Developers: http://lists.daemon.com.au/

Reply via email to