Refatoração de código
-
Upload
paulo-souza -
Category
Education
-
view
211 -
download
0
description
Transcript of Refatoração de código
![Page 1: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/1.jpg)
Refatoração de CódigoStart.RefactoringCode();
String autor = “Paulo Souza”;
![Page 2: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/2.jpg)
O que é ?
![Page 3: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/3.jpg)
O que é ?
Refatoração é o processo de modificar um sistema de software para melhorar
a estrutura interna do código sem alterar seu comportamento externo.
![Page 4: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/4.jpg)
Porque refatorar ?
![Page 5: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/5.jpg)
Porque refatorar ?
Melhora o entendimento do código.
![Page 6: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/6.jpg)
Porque refatorar ?
Melhora o entendimento do código.
Facilita a manutenção do código.
![Page 7: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/7.jpg)
Porque refatorar ?
Melhora o entendimento do código.
Facilita a manutenção do código.
Reusabilidade.
![Page 8: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/8.jpg)
Let’s go refactor!
![Page 9: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/9.jpg)
Vamos começar ?
![Page 10: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/10.jpg)
Vamos começar ?
![Page 11: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/11.jpg)
Antes de refatorar...
![Page 12: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/12.jpg)
Antes de refatorar...
O Sistema deve estar funcionando.
![Page 13: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/13.jpg)
Antes de refatorar...
O Sistema deve estar funcionando.
Se estiver uma sopa de letrinhas, as vezes melhor começar do zero e fazer
outro sistema ;)
![Page 14: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/14.jpg)
Por onde começar ?
![Page 15: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/15.jpg)
Por onde começar ?
Procure por “maus cheiros”.
![Page 16: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/16.jpg)
Como saber se é um “mau cheiro” ?
![Page 17: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/17.jpg)
Como saber se é um “mau cheiro” ?
Não existe nenhuma fórmula mágica que diga que parte do código é um mau
cheiro ou onde está o mau cheiro.
![Page 18: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/18.jpg)
Como saber se é um “mau cheiro” ?
Não existe nenhuma fórmula mágica que diga que parte do código é um mau
cheiro ou onde está o mau cheiro.
![Page 19: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/19.jpg)
Ou seja...
![Page 20: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/20.jpg)
Ou seja...
![Page 21: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/21.jpg)
Exemplos de “mau cheiros”
Código duplicado.
![Page 22: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/22.jpg)
Exemplos de “mau cheiros”
Código duplicado.
Método longo.
![Page 23: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/23.jpg)
Exemplos de “mau cheiros”
Código duplicado.
Método longo.
Classe grande.
![Page 24: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/24.jpg)
Exemplos de “mau cheiros”
Código duplicado.
Método longo.
Classe grande.
Comentários.
![Page 25: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/25.jpg)
Exemplos de refatorações
Extrair método.
![Page 26: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/26.jpg)
Exemplos de refatorações
Extrair método.
Subir método na hierarquia.
![Page 27: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/27.jpg)
Exemplos de refatorações
Extrair método.
Subir método na hierarquia.
Trocar algoritmo.
![Page 28: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/28.jpg)
Exemplos de refatorações
Extrair método.
Subir método na hierarquia.
Trocar algoritmo.
Renomear método.
![Page 29: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/29.jpg)
Exemplos de refatorações
Extrair método.
Subir método na hierarquia.
Trocar algoritmo.
Renomear método.
Simplificar Condicional.
![Page 30: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/30.jpg)
Ciclo de refatoração
![Page 31: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/31.jpg)
Referências
![Page 32: Refatoração de código](https://reader033.fdocument.pub/reader033/viewer/2022052620/55799bb3d8b42ae72b8b5305/html5/thumbnails/32.jpg)
Fim