… Someone cares about campy? Cool! But really, mootool's class system
sucks. Every time you new Something(), it goes and manually makes a
deep copy of EVERYTHING for that object, meaning creating objects
built with new Class({}) is always going to be slow, tedious, and
stupid, performance-wise.
On the browser platform, JS is now insanely fast, and the DOM is the
insanely slow bit, so it doesn't really matter if the code is a bit
inefficient, but on a server this stuff matters, and in MVC frameworks
people often create new instances of objects like templating engine
views, database interfaces, and so on, for every request. After
learning more about javascript, I've come to strongly believe that
mootools-server is a bad idea, and when I come to build my next node
app, I'll likely end up creating a new framework for my needs if
nothing to my taste exists, based around Object.create, using object
inheritance for lovely lovely speed.
I highly recommend if you still feel any attachment at all to the
mootools psuedoclass system, you read lots about the javascript object
inheritance design. I really think you'll be glad you did. This
language is a wonderful language. It is not a simple language needing
a layer of organisational OOP on top of it. It is just a different,
simpler way to do OOP, and with an open mind, I've found I in fact,
vastly prefer the javascript prototype way of doing things. There is
so much power in that simplicity. Power that most mootools users AND
core developers don't use or have access to. Read about Object.create
especially, an upcoming ES5 feature which can be easily duplicated in
native JS for the time being. It's good stuff! Promise!