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 Comments

Add Yours →

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

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

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

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

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

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

O link está quebrado para download. Seria possivel verificar. Agradeço. Estou lendo no scribd, mas queria o download.

Responda

Kico (Henrique Lobo Weissmann) Reply:

Oi Leonardo,

o disponibilizei nos guias da itexto – http://www.itexto.com.br/guias

Responda

Deixe um comentário

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.