Motivação
A busca por um código de qualidade deveria ser uma premissa comum a todo desenvolvedor, bem como presente no cronograma de qualquer projeto. Muitas vezes, no entanto, com prazos curtos e a busca por entregas cada vez mais rápidas, o código acaba perdendo qualidade e elevando o custo de manutenção.
Uma das opções que visam melhorar a qualidade de código é conhecida como Refactoring. Essa opção oferece um conjunto de técnicas que possibilitam melhorar o design do código sem alterar a lógica de negócio, isto é, o resultado desejado pelo cliente. Nesse artigo vamos focar na técnica Extract Class, catalogada no grupo de refatorações Moving Features Between Objects, cujo objetivo é auxiliar na decisão de onde colocar as responsabilidades de cada elemento do código, possibilitando, de forma controlada, trocas de responsabilidades entre classes/objetos.
Aqui, aprenderemos como utilizar essa técnica na linguagem Ruby, abordando como executar cada etapa ...