Download - Princípio DRY
![Page 1: Princípio DRY](https://reader038.vdocuments.com.br/reader038/viewer/2022100420/55978d711a28ab641e8b46c3/html5/thumbnails/1.jpg)
![Page 2: Princípio DRY](https://reader038.vdocuments.com.br/reader038/viewer/2022100420/55978d711a28ab641e8b46c3/html5/thumbnails/2.jpg)
Princípio DRY
2
Don’t Repeat Yourself (Nunca Repita Você Mesmo) 1
Princípio criado por Andy Hunt e Dave Thomas documentado no livro
“The Pragmatic Programmer” de 1.9992
Principal finalidade é reduzir a duplicação de informações no sistema
(Documentação, Código, Testes, Banco de Dados)3
Informações duplicadas devem ser refatoradas
(Remover todas as linhas de código duplicadas)4
Deve ser aplicado a medida que colocamos novas linhas de código5
![Page 3: Princípio DRY](https://reader038.vdocuments.com.br/reader038/viewer/2022100420/55978d711a28ab641e8b46c3/html5/thumbnails/3.jpg)
Porque aplicar o DRY ???
3
Evitar linhas de código duplicadas1
Software mais limpo e menor (linhas de código, bytes (assembly))2
Software flexível e de fácil manutenção3
Forçar o desenvolvedor a olhar e conhecer melhor o código antes de
implementar uma nova funcionalidade4
Aplicar a técnica de POO (Encapsulamento)5
![Page 4: Princípio DRY](https://reader038.vdocuments.com.br/reader038/viewer/2022100420/55978d711a28ab641e8b46c3/html5/thumbnails/4.jpg)
Como aplicar o DRY ???
4
Localizar Código
Duplicado
Encapsular Código
DuplicadoTestar
![Page 5: Princípio DRY](https://reader038.vdocuments.com.br/reader038/viewer/2022100420/55978d711a28ab641e8b46c3/html5/thumbnails/5.jpg)
Código .NET - SEM DRY
5
protected void Button1_Click(object sender, EventArgs e)
{
ClientScript.RegisterStartupScript(typeof(Page), “inclusao”,
“alert(„Cliente incluido com sucesso‟);”, true);
}
protected void Button2_Click(object sender, EventArgs e)
{
ClientScript.RegisterStartupScript(typeof(Page), “alteracao”,
“alert(„Cliente alterado com sucesso‟);”, true);
}
![Page 6: Princípio DRY](https://reader038.vdocuments.com.br/reader038/viewer/2022100420/55978d711a28ab641e8b46c3/html5/thumbnails/6.jpg)
Código .NET - COM DRY
6
private void ExibirMensagem(String identificador, String mensagem)
{
ClientScript.RegisterStartupScript(typeof(Page), identificador,
“alert(„” + mensagem + “‟);”, true);
}
protected void Button1_Click(object sender, EventArgs e)
{
ExibirMensagem(“inclusao”, “Cliente inserido com sucesso”);
}
protected void Button2_Click(object sender, EventArgs e)
{
ExibirMensagem(“alteracao”, “Cliente alterado com sucesso”);
}
![Page 7: Princípio DRY](https://reader038.vdocuments.com.br/reader038/viewer/2022100420/55978d711a28ab641e8b46c3/html5/thumbnails/7.jpg)
Código CSS - SEM DRY
7
h1 {
color: #FF0000;
font-family: Arial;
}
h2 {
color: #FF0000;
font-family: Arial;
}
h3 {
color: #FF0000;
font-family: Arial;
}
![Page 8: Princípio DRY](https://reader038.vdocuments.com.br/reader038/viewer/2022100420/55978d711a28ab641e8b46c3/html5/thumbnails/8.jpg)
Código CSS - COM DRY
8
h1, h2, h3, h4 {
color: #FF0000;
font-family: Arial;
}
![Page 9: Princípio DRY](https://reader038.vdocuments.com.br/reader038/viewer/2022100420/55978d711a28ab641e8b46c3/html5/thumbnails/9.jpg)