Artigo no estilo: Curso

De que se trata o artigo:

Aborda o tema refatoração para padrões com o objetivo de mostrar como o desenvolvedor pode usá-lo para melhorar o código-fonte de suas aplicações.


Para que serve:

Para prover conhecimento ao desenvolvedor sobre refatoração para padrões e demonstrar através de exemplos práticos a aplicação das técnicas de refatoração para padrões Substituir Distinção Um/Muitos por Composite e Substituir Notificações Hard-coded por Observer.


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

O tema se torna fundamental para desenvolvedores que já estão familiarizados com padrões de projeto e já os implementam em seus softwares e que querem saber mais sobre refatoração para padrões, conhecendo os benefícios que sua utilização traz.
Autores: Jacimar Fernandes Tavares e Marco Antônio Pereira Araújo

No desenvolvimento de uma aplicação, o desenvolvedor fica cercado por diversas informações provenientes do negócio do cliente e tem a missão de implementá-las em uma solução que possibilite o cliente gerir seu negócio. Além de fornecer uma solução que corresponda às expectativas do cliente, muitas vezes o desenvolvedor deve fazê-las com base em uma série de regras que a empresa onde ele trabalha propõe, entre elas, criar estruturas de código que possam ser reutilizadas, codificar de forma clara para que outro desenvolvedor possa entender o negócio em uma análise futura, escrever classes que, caso sofram manutenção posteriormente, não gerem grandes impactos em outras classes do sistema, entre outras. Esta última, por sua vez, pode levar o desenvolvedor a uma pergunta: como fazer com que um objeto seja informado de mudanças ocorridas em outro objeto, sem criar um grande acoplamento entre as classes?

Neste sentido existe um padrão de projeto chamado Observer que permite ao desenvolvedor criar uma hierarquia de classes de observadores capazes de avisarem quando mudanças em um objeto ocorrer, sem que para isso tenham que ser escritas grandes estruturas de código acopladas ao objeto que se deseja observar.

Quando já existe grande quantidade de código escrita para notificar mudanças ocorridas em um objeto, a solução é refatorar para o padrão Observer. Neste artigo, uma das refatorações para padrões apresentadas é Substituir Notificações Hard-coded por Observer, que fornece uma solução para refatorar para o padrão de projeto Observer.

A segunda refatoração para padrões que este artigo aborda, Substituir Distinção Um/Muitos por Composite, é mais uma forma de implementar o padrão Composite (ver Nota 1), como as demais formas já apresentadas em outros artigos desta série sobre refatoração para padrões. Sua diferença, no entanto, consiste no problema de código que ela atua. O cenário a ser estudado consiste em um pilar básico: código duplicado.

É comum o desenvolvedor em determinados momentos precisar manipular um único objeto ou manipular diversos objetos desta mesma classe. Com isso ele implementa trechos de código semelhantes para manipular um objeto e outro para manipular vários objetos. Esta prática faz com que muito código duplicado seja escrito na mesma classe, com intuito de resolver os dois problemas citados.

...
Quer ler esse conteúdo completo? Tenha acesso completo