Qual é o benefício das chamadas de função embutidas?

Eu vi esse código (explicitamente é no jQuery, com modificação)

(function(window,undefined){
    var jQuery=(function(){
        var jQuery=something;
        jQuery.xxx=xxx;
        //...
        return jQuery;
    })();
    //...
    window.jQuery=window.$=jQuery;
})(window);

Embora eu entenda o código de embalagem em uma chamada de função embutida pode definir claramente o escopo da variável, eu não entendo os benefícios de

passagemwindow com um parâmetro em vez de usá-lo diretamenterecebendo uma instância deundefined por um parâmetro indefinido, e tambémdefinindojQuery pelo valor de retorno de outra chamada de função em linha. Alguém pode explicar um pouco?

EDITAR escreva # 3 mais claramente:

O que eu entendo é que o código definejQuery dentro de outra função, em seguida, devolva-a.

//(function(window,undefined){
var jQuery=(function(){
    // Inside this function defines jQuery and return it?
    var jQuery=function(selector,context){
        return new jQuery(selector,context); //simplified
    };
    jQuery.xxx=xxx;
    //...
    return jQuery;
})(); // This executes the inline function and assign `jQuery` with the return value???
//... })(window);

Isso é mais parecido com o seguinte:

function define_jQuery(){
    // Inside this function defines jQuery and return it?
    var jQuery=function(selector,context){
        return new jQuery(selector,context); //simplified
    };
    jQuery.xxx=xxx;
    //...
    return jQuery;
}

//(function(window,undefined){
var jQuery=define_jQuery(); // This executes the inline function and assign `jQuery` with the return value???
//... })(window);

Não seria mais simples de fazer:

//(function(window,undefined){
var jQuery=function(selector,context){
    return new jQuery(selector,context); //simplified
};
jQuery.xxx=xxx;
//...
//... })(window);

questionAnswers(4)

yourAnswerToTheQuestion