RequireJS: a JavaScript file and module loader
requirejs.org
requirejs.org
• Loads scripts by appending to HEAD
• Asynchronous – calls functions when their dependencies are loaded.
• Support for a compilation to take your developer friendly cloud of javascript files and turn them into a single, closure compiled mass for faster page loads.
All of those projects concentrate on loading scripts asynchronously and in parallel. However, to the best of my knowledge, they do not provide sane, standardized (standardized meaning CommonJS compatible in this case) namespacing, modularization and dependency management into your Javascript.
I'm would genuinely like more information on the authors of this library. I a little confused why their examples have the script tags in the HEAD of the document, when it is well known that script tags block all other resources from loading and should be placed at the bottom of the page.
http://www.stevesouders.com/blog/2009/04/27/loading-scripts-...
If the authors or developers have some magic to bypass this, besides just drawing the script tags via JS as Steve Souders suggests, I would be excited to see that presented more front and center.
One of the bigger misconceptions about RequireJS is that it's about efficiency. RequireJS does provide an efficient way to load up the scripts, but that's an important side benefit of the actual reason why it exists: To provide sane modularization and dependency management of your Javascript code.
I don't really agree that putting the script tag in the head is a simple example. The tornado web docs, talk about loading script tags last, and they cover a lot more than just where is the best place to put script tag.
http://www.tornadoweb.org/documentation
I could buy the "it's okay to write demos with script tags in the head" bit in the same why I buy it's "okay" to use document.write() examples b/c it's 'fast'. Which is to say, I don't buy either argument.
If requireJS is aiming at people who don't know any advanced JS 'hackery', why on earth would that same dev know they need "sane modularization and dependency management". They still think it's "okay" to load script tags from the HEAD.