Um guia em Ruby
Acesse a página oficial da Casa do Código para adquirir sua cópia do livro! http://www.casadocodigo.com.br/products/livro-refatoracao-ruby
Cada um dos padrões apresentados e discutidos no livro possui uma pasta dentro de lib
e spec
com a implementação e testes, respectivamente.
Para executar todos os testes, basta executar rspec spec
ou para executar um teste específico rspec spec/adpter/cliente_spec.rb
.
O repositório possui dois branches: master
com o código original e refatorado
com o código modificado e refatorado.
O livro além de apresentar os padrões também guia o processo de refatoração com passos detalhados de qual técnica executar. Utilize o código para exercitar as técnicas de refatoração e explorar melhor o padrão, implementando a extensão ou até mesmo criando novos problemas.
Se tiver alguma dúvida ou quiser olhar a implementação final, basta trocar o branch para refatorado
e explorar o código com a solução final.
Se você encontrar algum erro ou achar alguma maneira de deixar o código mais expressivo, basta criar um pull request com suas mudanças!
Todo o trabalho está disponível com licensa Creative Commons (para mais informações veja o arquivo LICENSE)