Guia itexto: o container de Injeção de Dependências do Spring 3.0

O que é injeção de dependências? E um container de injeção de dependências? Alto acoplamento? Pra que serve o Spring framework? O que isto tudo tem a ver com o meu dia a dia como desenvolvedor?

Após ouvir diversas vezes estas perguntas, resolvi arregaçar as mangas e escrever um pequeno guia que explica o que é o Spring Framework e seus conceitos relacionados: inversão de controle, injeção de dependências, o container, alto acoplamento e muitos outros conceitos relacionados. Aproveito e também exponho algumas boas práticas que tornarão a sua vida bem mais fácil.

Se você possui curiosidade a respeito deste framework, mas costuma se perder com os conceitos envolvidos, este guia é para você.

Nota: esta é apenas a primeira versão do guia. Com certeza algumas correções serão feitas nos próximos dias, e você é parte importante neste processo. Caso encontre algum erro ou sugestão, por favor, entre em contato comigo através dos comentários presentes neste blog ok?

Update (17/11/2010): a pedidos, fiz o upload do guia para o Scribd também. Pode ser acessado neste link.

Para baixar o guia, basta clicar no link abaixo:

17 thoughts on “Guia itexto: o container de Injeção de Dependências do Spring 3.0

  1. Excelente artigo não só de Spring, mas também de IoC e DI. Muitos vão aproveitar. Eu até teria economizado e nem mostrado a parte de configuração via XML :)

    Responda

    admin Reply:

    Oi Paulo, que bom que gostou! Valeu!

    A parte da configuração XML, apesar de muita gente detestar, acredito que seja importante estar presente, porque, ao menos na minha opinião, é bastante útil pra se obter uma compreensão do funcionamento dos padrões de IoC e DI.

    Responda

  2. Parabéns pelo guia, muito bom mesmo

    Legal ver a explicação de algumas annotations menos triviais, mas que são bastante úteis!

    O Padrão Factory citado é o Method Factory, isso?! :)

    Responda

    admin Reply:

    Oi Pablo, fico feliz que tenha gostado. Valeu!

    Não, o padrão factory é o padrão factory da GoF mesmo :) – vou revisar o texto pra ver se deixo isto mais claro. Valeu!

    Responda

  3. Gostei bastante da apostila Kico, achei bem didática e gostei especialmente o fato de você dar o conceito teórico do pattern junto com um código de exemplo e o caso de uso com o spring.

    Quando aprendi Design patterns na faculdade era bem difícil ver a teoria se encaixando com a prática(tanto que fiz a cadeira duas vezes =P) pois usavamos UML. Aprender Spring sem entender bem os conceitos que o regem e os benefícios que ele te traz é bem massante e diria até contra-produtivo.

    Parabéns.

    Responda

    admin Reply:

    Oi Raphael, fico feliz que tenha gostado, valeu!

    Enfrentei os mesmos problemas que você. No caso do Spring, o grande problema que vejo é o seguinte: todo mundo sabe que é lindo e melhora nossos sistemas, mas poucas vezes li sobre COMO isto pode ser feito.

    Responda

  4. Oi Kiko, parabéns pela apostila, conteúdo aparentemente “simples” do Spring, mas que muita gente não sabe e/ou usa de forma errada. Ficou bem didático!

    E discordo do Paulo quanto a não mostrar o conteúdo em XML; apesar de gostar dos metadados via anotações, a configuração XML ainda é a única que não põe o dedo no seu código.

    Abraço,

    @irobson

    Responda

    admin Reply:

    Oi Robson, fico feliz que tenha gostado. Concordo com você a respeito do XML. Além disto, é também, na minha opinião, a melhor forma de expor o funcionamento por trás de um container de IoC.

    Tipo: é chato de escrever? Pode ser, mas torna explícito diversos detalhes do funcionamento que, muitas vezes, para o iniciante, passam despercebidos.

    Responda

  5. Parabéns xará, o artigo está ótimo. A parte conceitual está muito esclarecedora. A comparação entre os tipos de configurações e suas utilizações no mesmo exemplo, foram fundamentais para absorção do conhecimento. Aprendi muito com a leitura.

    Responda

    admin Reply:

    Opa “Henrique Lobo”! Que bom que gostou!

    Nota: existem dois “Henriques Lobo” no Brasil. Um sou eu, outro é ele! Não é o máximo?

    Responda

  6. Mesmo sendo do mundo .NET gostei bastante do artigo. O exemplo é bem didático e foi muito bem explicado.
    Parabéns !

    Responda

    admin Reply:

    Oi Ari, fico feliz que tenha gostado. Valeu!

    Responda

Leave a Reply

Your email address will not be published. Required fields are marked *