Guia Padrões de Projeto em Java

A importância dos Padrões de Projeto

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (2)  (0)

Este artigo apresentará os padrões de projeto, com enfoque nos benefícios que podem ser obtidos através da correta utilização dos mesmos.

Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo:

Este artigo apresentará os padrões de projeto, com enfoque nos benefícios que podem ser obtidos através da correta utilização dos mesmos.

Em que situação o tema é útil:

Somente conhecer e utilizar os princípios básicos da orientação a objetos ou de uma linguagem de programação, não garante o desenvolvimento de softwares flexíveis, reutilizáveis e de fácil manutenção. Os padrões de projeto representam soluções que tentam suprir tais necessidades.

Resumo DevMan:

Com a finalidade de proporcionar o reuso da experiência adquirida na solução de problemas corriqueiros, o conceito de padrão de projeto surgiu na construção civil e posteriormente foi adotado pela Engenharia de Software. Entretanto, somente se tornou popular no mundo do desenvolvimento de software após o lançamento do livro Design Patterns: Elements of Reusable Object-Oriented Software, escrito por quatro autores, que posteriormente ficaram conhecidos como a “Gangue dos Quatro”.

Quando utilizados de forma correta, os padrões de projeto colaboram para a obtenção de um design flexível, mais coeso e menos acoplado. Neste artigo, abordaremos os padrões de projeto catalogados pela “Gangue dos Quatro”, com enfoque nos benefícios obtidos através da utilização dos mesmos.

Os padrões de projeto, também conhecidos pelo termo original em inglês design patterns, descrevem soluções para problemas recorrentes no desenvolvimento de software, e quando utilizados de forma correta, refletem diretamente no aumento da qualidade do código, tornando-o mais flexível, elegante e reusável.

A ideia de padrões de projeto não se restringe ao desenvolvimento de software. Ela foi elaborada na década de 70, pelo arquiteto Christopher Alexander, que escreveu o primeiro catálogo de padrões de que se tem conhecimento. Neste catálogo foram descritos padrões em projetos da construção civil.

Somente após o lançamento do livro Design Patterns: Elements of Reusable Object-Oriented Software, em 1995, que os padrões realmente ganharam popularidade no mundo do desenvolvimento de software. Neste livro foram catalogados e descritos vinte e três padrões para o desenvolvimento de software orientado a objetos. Seus autores, Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides, ficaram conhecidos como a “Gangue dos Quatro” (Gang of Four) ou simplesmente GoF. Posteriormente, vários outros livros do estilo foram publicados. Tendo, inclusive, a Sun Microsystems, publicado, em 2002, a primeira edição do livro Core J2EE Patterns: Best Practices and Design Strategies, que catalogou vinte e cinco padrões voltados para o J2EE, utilizando e baseando-se nos padrões GoF.

Neste contexto, a principal vantagem do uso de padrões de projeto está no reuso das soluções propostas para determinado problema, o que permite que até mesmo profissionais menos experientes possam atuar como especialistas. Pois os padrões, geralmente, são frutos da experiência de profissionais experientes que tiveram a oportunidade de aplicar e validar tais soluções em projetos reais. Além disso, podemos destacar a facilitação da manutenção, já que um padrão representa uma unidade de conhecimento comum entre os envolvidos.

A utilização de alguns padrões, apesar de ser benéfica na maioria dos casos, torna o código-fonte maior e mais complexo. Isto nos faz refletir sobre a possibilidade de estarmos desnecessariamente aumentando a complexidade do design. Portanto, é necessário não somente conhecer os padrões de projeto, mas sim, realmente entendê-los para identificar quando utilizá-los e usufruir positivamente da experiência herdada.

Neste artigo iremos abordar os padrões de projeto catalogados pela Gangue dos Quatro, aplicados à linguagem Java. Apesar disso, vale ressaltar que tais padrões podem ser implementados em qualquer linguagem de programação orientada a objetos.

Deste modo, primeiramente analisaremos alguns princípios de design de software, a fim de construir uma base sólida, para logo após apresentar como um padrão de projeto pode ser definido, organizado e catalogado, exemplificar alguns padrões e casos de uso.

Princípios de Design de Software

Como vimos até o momento, os padrões de projeto são soluções robustas e flexíveis que tornam a evolução do software uma tarefa menos dolorosa. Em uma análise mais profunda, pode-se notar que tais benefícios são frutos de alguns princípios da orientação a objetos, que são comuns entre os padrões. Portanto, vamos refletir sobre alguns desses princípios, antes de aprofundarmos nosso estudo sobre os padrões.

Coesão versus Acoplamento

A coesão se refere ao escopo do objeto, ou seja, está diretamente relacionada com as responsabilidades atribuídas ao objeto para que cumpra a sua finalidade. Para obter um design coeso devemos definir claramente o propósito do objeto e centralizar nele tudo o que o diz respeito, evitando que os algoritmos se espalhem pelo projeto dificultando a localização e, consequentemente, a manutenção.

O acoplamento está relacionado com o grau de dependência entre os objetos, ou seja, o conhecimento necessário dos atributos e métodos de uma classe para que a mesma possa ser utilizada por outra e as colaborações possam ocorrer. A flexibilidade é o quesito mais afetado em um design acoplado, pois o mesmo não permite que os elementos da composição de objetos sejam facilmente substituídos sem que o funcionamento seja prejudicado.

"

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?