Wednesday, September 5, 2012

Joose: Object-Oriented Programming with Javascript Made Easy

Last week I posted about a site that had a nice list of software coding patterns with examples in Javascript. While researching some patterns, I found Joose

Joose is a self-hosting meta object system for JavaScript with support for classes, inheritance, mixins, traits, method modifiers and more.

Joose makes object-oriented programming with JavaScript easy, declarative and very productive. The Joose meta-object system is multi-paradigm. It supports class-based and prototype-based programming styles as well as class-based inheritance and role-based extention.

What's interesting about Joose, is its not a DOM access, traversal, enhancement library. Its simply a framework to enable easy application of specific OO patterns in Javascript. If you're a Perl 5 developer, you might have come across Moose. Joose is heavily inspired by that framework but is for Javascript.

I haven't had a chance to tinker with it yet - I just dug through the docs and examples a bit to see what its all about. Its something I might revisit and see if I can find a use for in some of my jQuery projects.