Bom post, Matheus.
Allan Marques Baptista
141

Allan,

primeiramente muito obrigado pelo feedback.
Gostei bastante do seu comentário mas vamos lembrar a definição que o Eric Elliott nos deu sobre Closures:

A combinação de uma função e a referência ao seu estado externo é uma closure.

Ao criarmos uma IIFE, atendemos a ambos critérios:

  1. É uma função;
  2. Tem referência ao seu estado externo (que na pior das hipóteses é o global);

Existe inclusive esse post polêmico aqui que o autor tentou explicar porque IIFEs !== Closures (inclusive esse é o título do mesmo) mas após ler atentamente os comentários ele se retratou.

Mas na minha visão nada disso importa, estamos apenas brincando com palavras, definições e siglas. O que importa de verdade são desenvolvedores JavaScript sabendo ativamente construir aplicações com data privacy.

Novamente muito obrigado pela mensagem e pela educação mostrada mesmo não concordando comigo.

Abraços!