So what is the book about?
So far I actually didn’t write that much about it on my blog here, although I heavily use it since we adopted it as our main SPA (Single Page Application) framework at work. Hopefully, in the next months I’m able to publish something more about it.
The book is expecially suited for novices in this area as it slowly but steadily introduces you to JMVC’s concepts, without overwhelming you with too much of information. In its approximately 100 pages, the author managed to find the balance between the necessary theoretical information and their corresponding practical application.
The book starts by introducing the concept of a single page application before then proceeding to guide the user through the installation and setup process of a new JMVC project. It describes the architecture of JMVC by detailing each of its building blocks, namely DocumentJS (the documentation engine), FuncUnit (advanced QUnit UI testing), jQueryMX (its core basically) and StealJS (for dependency management and code generation).
Towards the end it illustrates the pratical application of JMVC’s concepts on the basis of a time tracking and invoicing app for freelancers.
Conclusion - Some Words about JMVC
- Testing - Full integration with QUnit and FuncUnit, a JMVC evolution of QUnit for more advanced UI testing.
- Dependency Management - It contains a dependency management module which is a must if you create large applications.
- Templating Engine - A templating engine for client-side HTML rendering. By default it uses EmbeddedJShttp://embeddedjs.com/), but you can easily swap it out with your favorite one if you like.
- Class suport & Data Modeling - It provides a class system with full inheritance and data models for exchanging data with a server backend.
- jQuery Widget Factory & utils - A bunch of jQuery utilities
- (and a lot more…)
Well yes, that might be true. Although the guys at Bitovi (the consulting company that created the framework) did and do an excellent work in creating and further developing the framework (as well as giving support on their forum) there isn’t much visibility on the general community on the web. Hopefully this will change with CanJS, an evolution of JMVC’s MVC part.