Por que definir uma função anônima e passar a jQuery como argumento?
Eu estou olhando através do excelente código de demonstração peepcode dos screencasts do backbone.js. Nele, o código de backbone é todo incluído em uma função anônima que é passada pelo objeto jQuery:
<code>(function($) { // Backbone code in here })(jQuery); </code>
No meu próprio código de backbone, acabei de incluir todo o meu código no evento "pronto" do jQuery DOM:
<code>$(function(){ // Backbone code in here }); </code>
Qual é o ponto / vantagem da primeira abordagem? Fazê-lo desta maneira cria uma função anônima que é então executada imediatamente com o objeto jQuery sendo passado como o argumento da função, garantindo efetivamente que $ é o objeto jQuery. Este é o único ponto - garantir que o jQuery está vinculado a '$2$#39; ou existem outras razões para fazer isso?