More DOM Fun

by Ed on July 22, 2007

As per my last post, I’ve been working up a storm to redo our Konfabulator DOM. We did in fact end up coming up with a whole new way of exposing our objects into JavaScript. It’s so much nicer than anything we had in the past, though it does involve the use of a custom tool to help us generate the glue. But the end result is absolutely great. We’re able to whip up classes in no time now. Too bad we’re whipping up the same classes we had and not new ones 😛 At the same time, I’ve been fixing layering issues in our code. Too much lower level stuff knew about too much higher level stuff. Some people seem to think this is OK. I however do not.

I’ve been finding that as I progress in my coding life, I’ve become more and more of a purist. I think most of my design purity stems from my life at Apple, to be honest. We had to completely re-layer most of our stuff for the transition to Mac OS X (it was part of the whole design). This and many other things have stuck with me as I’ve moved on from there. I like abstractions and the ability to separate pieces of code so that I can mix and match them later (and invariably, the need will arise). I’ve been developing various tenets and axioms as I go which perhaps someday I can compile and put up here.

Bringing the original Konfabulator hair tangle into this new, clean architecture has been a long time coming. But once complete, it can be used for far more than just Widgets in theory. And it can be used in far more scenarios than just embedded inside Yahoo! Widgets. That’s why you design layered and pure from the beginning: flexibility.

{ 0 comments… add one now }

Leave a Comment

Previous post:

Next post: