SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
TEORIA DA JANELA QUEBRADA 
lEONARDO aMARILHO 
github.com/leopoa
A origem 
James Q. Wilson e George L. Kelling 
escreveram um artigo na década de 1980 
entitulado “Broken Windows”. Eles defendiam 
que uma estratégia de êxito para prevenir o 
vandalismo seria resolver os problemas 
quando eles são pequenos. “Repare as 
janelas quebradas rapidamente e será 
possível ver como os vândalos terão menos 
probabilidade de estragar mais”.
livro The pragmatic programmer 
No livro ao lado, os autores fazem uma relação da 
origem da teoria com o que acontece com o 
desenvolvimento de software, ao longo do tempo
Importância 
Refatorar (arrumar as janelas) 
é manutenção preventiva, 
evita o acumulo de débitos técnicos
Débitos técnicos 
crescem rapidamente se não tratados E vão 
DEGRADANDO O DESIGN, O CÓDIGO E A 
ARQUITETURA DO SISTEMA
Código legado 
Visualizar esses problemas, nos Passa 
a impressão de abandono e completo 
desinteresse pelo sistema
Resultando 
No final, o programador estará fazendo 
mínimo necessário para resolver o problema
Conclusão 
a idéia é que um código permanentemente bem 
escrito, é mais fácil de ser mantido assim. 
Em contra partida, um código cheio de 
gambiarras é um convite para outras novas.
Remova as janelas quebradas 
Busque estratégias para lhe ajudar: 
- crie testes para começar a refatorar 
- elimine códigos duplicados e grandes 
- utilize e ensine as melhores práticas
Antes tarde do que nunca 
Importante é começar, pode parecer 
simples ou ineficaz diante do cenário 
catastrófico, mas essa atitude pode 
ser ponto de partida que faltava!
Lembre-se: cuidado com código 
Os programadores estão constantemente em 
“modo de manutenção”, sendo apenas os 10 
primeiros minutos de código são originais, 
quando você os “cria” pela primeira vez, depois 
disso é só refactoring - “Pragmatic Programmer”
Crie bons hábitos 
● conserte as janelas quebradas o mais rápido 
● deixe o código melhor do que você encontrou 
● Não produza débito técnico!
lEONARDO aMARILHO 
github.com/leopoa

Weitere ähnliche Inhalte

Was ist angesagt?

Ética: Aula 3
Ética: Aula 3Ética: Aula 3
Ética: Aula 3
Ana Lima
 
Oficina de Criatividade
Oficina de CriatividadeOficina de Criatividade
Oficina de Criatividade
sebraeleste1
 
Curso Lacan e a Psicanálise- Aula 12: Seminário 10 (A angústia): a construção...
Curso Lacan e a Psicanálise- Aula 12: Seminário 10 (A angústia): a construção...Curso Lacan e a Psicanálise- Aula 12: Seminário 10 (A angústia): a construção...
Curso Lacan e a Psicanálise- Aula 12: Seminário 10 (A angústia): a construção...
Alexandre Simoes
 

Was ist angesagt? (20)

pdf. LEITURA FACIAL EM PERGUNTAS E RESPOSTAS baixar
pdf. LEITURA FACIAL EM PERGUNTAS E RESPOSTAS baixarpdf. LEITURA FACIAL EM PERGUNTAS E RESPOSTAS baixar
pdf. LEITURA FACIAL EM PERGUNTAS E RESPOSTAS baixar
 
Cartilha de voluntariado
Cartilha de voluntariadoCartilha de voluntariado
Cartilha de voluntariado
 
Relações interpessoais psicologia Bruna Saraiva
Relações interpessoais psicologia Bruna SaraivaRelações interpessoais psicologia Bruna Saraiva
Relações interpessoais psicologia Bruna Saraiva
 
Fofoca 1mxeerj
Fofoca 1mxeerjFofoca 1mxeerj
Fofoca 1mxeerj
 
Ética: Aula 3
Ética: Aula 3Ética: Aula 3
Ética: Aula 3
 
Apresentação Sadia
Apresentação SadiaApresentação Sadia
Apresentação Sadia
 
100 Ferramentas de coaching01.pdf
100 Ferramentas de coaching01.pdf100 Ferramentas de coaching01.pdf
100 Ferramentas de coaching01.pdf
 
Bom humor no ambiente de trabalho
Bom humor no ambiente de trabalhoBom humor no ambiente de trabalho
Bom humor no ambiente de trabalho
 
Qualidade de Vida no Trabalho
Qualidade de Vida no Trabalho Qualidade de Vida no Trabalho
Qualidade de Vida no Trabalho
 
O que é liderança
O que é liderançaO que é liderança
O que é liderança
 
Oficina de Criatividade
Oficina de CriatividadeOficina de Criatividade
Oficina de Criatividade
 
Empreendedorismo corporativo aula 1 e 2 slides
Empreendedorismo corporativo   aula 1 e 2 slidesEmpreendedorismo corporativo   aula 1 e 2 slides
Empreendedorismo corporativo aula 1 e 2 slides
 
Capítulo 1 contextualizando pequenas e médias empresas
Capítulo 1   contextualizando pequenas e médias empresasCapítulo 1   contextualizando pequenas e médias empresas
Capítulo 1 contextualizando pequenas e médias empresas
 
Suicídio e saúde mental.pdf
Suicídio e saúde mental.pdfSuicídio e saúde mental.pdf
Suicídio e saúde mental.pdf
 
Curso Lacan e a Psicanálise- Aula 12: Seminário 10 (A angústia): a construção...
Curso Lacan e a Psicanálise- Aula 12: Seminário 10 (A angústia): a construção...Curso Lacan e a Psicanálise- Aula 12: Seminário 10 (A angústia): a construção...
Curso Lacan e a Psicanálise- Aula 12: Seminário 10 (A angústia): a construção...
 
Reforma Trabalhista
Reforma TrabalhistaReforma Trabalhista
Reforma Trabalhista
 
Rituais Corporativos
Rituais CorporativosRituais Corporativos
Rituais Corporativos
 
Técnica de Relaxamento Jacobson
Técnica de Relaxamento JacobsonTécnica de Relaxamento Jacobson
Técnica de Relaxamento Jacobson
 
Administração e escolas de pensamento
Administração e escolas de pensamentoAdministração e escolas de pensamento
Administração e escolas de pensamento
 
Teorias das relações humanas
Teorias das relações humanasTeorias das relações humanas
Teorias das relações humanas
 

Andere mochten auch (15)

Teoria janelas quebradas
Teoria janelas quebradasTeoria janelas quebradas
Teoria janelas quebradas
 
A teoria das janelas quebradas
A teoria das janelas quebradasA teoria das janelas quebradas
A teoria das janelas quebradas
 
Arroyo
ArroyoArroyo
Arroyo
 
Broken windows theory
Broken windows theoryBroken windows theory
Broken windows theory
 
Janelas quebradas
Janelas quebradasJanelas quebradas
Janelas quebradas
 
Toria Janelas Quebradas
Toria Janelas QuebradasToria Janelas Quebradas
Toria Janelas Quebradas
 
Aula miguel arroyo
Aula miguel arroyoAula miguel arroyo
Aula miguel arroyo
 
Galinha ao Molho Pardo
Galinha ao Molho PardoGalinha ao Molho Pardo
Galinha ao Molho Pardo
 
Broken Window Theory
Broken Window TheoryBroken Window Theory
Broken Window Theory
 
Final presentation: Broken Window Theory
Final presentation: Broken Window Theory Final presentation: Broken Window Theory
Final presentation: Broken Window Theory
 
Ciclos de Desenvolvimento Humano e Formação de Educadores
Ciclos de Desenvolvimento Humano e Formação de EducadoresCiclos de Desenvolvimento Humano e Formação de Educadores
Ciclos de Desenvolvimento Humano e Formação de Educadores
 
Escola libertária seminário de teoria pedagógica i
Escola libertária   seminário de teoria pedagógica iEscola libertária   seminário de teoria pedagógica i
Escola libertária seminário de teoria pedagógica i
 
6107737 caderno-de-dinamicas-para-telemarketing (1)
6107737 caderno-de-dinamicas-para-telemarketing (1)6107737 caderno-de-dinamicas-para-telemarketing (1)
6107737 caderno-de-dinamicas-para-telemarketing (1)
 
SAP Production Planning
SAP Production PlanningSAP Production Planning
SAP Production Planning
 
Apresentação de slides pronto
Apresentação de slides prontoApresentação de slides pronto
Apresentação de slides pronto
 

Ähnlich wie Teoria das janelas quebradas - Pragmatic Programmer

Programação Pragmática
Programação PragmáticaProgramação Pragmática
Programação Pragmática
elliando dias
 
Linux Magazine 59 CE
Linux Magazine 59 CELinux Magazine 59 CE
Linux Magazine 59 CE
Victor Castro
 
Cap 25 - Erros, Alertas e Confirmação
Cap 25 - Erros, Alertas e ConfirmaçãoCap 25 - Erros, Alertas e Confirmação
Cap 25 - Erros, Alertas e Confirmação
Robert Ranger
 
Dicas 50 soluções para os problemas mais enervantes do pc
Dicas  50 soluções para os problemas mais enervantes do pcDicas  50 soluções para os problemas mais enervantes do pc
Dicas 50 soluções para os problemas mais enervantes do pc
Vanderlei Nascimento
 

Ähnlich wie Teoria das janelas quebradas - Pragmatic Programmer (20)

Code smell gsw
Code smell   gswCode smell   gsw
Code smell gsw
 
Over engineering
Over engineeringOver engineering
Over engineering
 
Programação defensiva
Programação defensivaProgramação defensiva
Programação defensiva
 
O programador pragmático
O programador pragmáticoO programador pragmático
O programador pragmático
 
Boas praticas em_desenvolvimento_de_software
Boas praticas em_desenvolvimento_de_softwareBoas praticas em_desenvolvimento_de_software
Boas praticas em_desenvolvimento_de_software
 
Qualidade no desenvolvimento de sistemas
Qualidade no desenvolvimento de sistemasQualidade no desenvolvimento de sistemas
Qualidade no desenvolvimento de sistemas
 
Clean code @rogeriofontes-techfriday-everis
Clean code @rogeriofontes-techfriday-everisClean code @rogeriofontes-techfriday-everis
Clean code @rogeriofontes-techfriday-everis
 
PHP Anti Patterns
PHP Anti PatternsPHP Anti Patterns
PHP Anti Patterns
 
Programação Pragmática
Programação PragmáticaProgramação Pragmática
Programação Pragmática
 
TDC2016SP - Trilha Quebrando um monolítico J2EE, uma história de trás das tri...
TDC2016SP - Trilha Quebrando um monolítico J2EE, uma história de trás das tri...TDC2016SP - Trilha Quebrando um monolítico J2EE, uma história de trás das tri...
TDC2016SP - Trilha Quebrando um monolítico J2EE, uma história de trás das tri...
 
SCTI 2014 - Dicas para tomadas de decisão seguras em front-end
SCTI 2014 - Dicas para tomadas de decisão seguras em front-endSCTI 2014 - Dicas para tomadas de decisão seguras em front-end
SCTI 2014 - Dicas para tomadas de decisão seguras em front-end
 
Debugging node
Debugging nodeDebugging node
Debugging node
 
Pessoas Ou Processos
Pessoas Ou ProcessosPessoas Ou Processos
Pessoas Ou Processos
 
Linux Magazine 59 CE
Linux Magazine 59 CELinux Magazine 59 CE
Linux Magazine 59 CE
 
Cap 25 - Erros, Alertas e Confirmação
Cap 25 - Erros, Alertas e ConfirmaçãoCap 25 - Erros, Alertas e Confirmação
Cap 25 - Erros, Alertas e Confirmação
 
Dicas 50 soluções para os problemas mais enervantes do pc
Dicas  50 soluções para os problemas mais enervantes do pcDicas  50 soluções para os problemas mais enervantes do pc
Dicas 50 soluções para os problemas mais enervantes do pc
 
Revista programar 12
Revista programar 12Revista programar 12
Revista programar 12
 
10 dicas de carreira em PHP
10 dicas de carreira em PHP10 dicas de carreira em PHP
10 dicas de carreira em PHP
 
Tecnicas de Detenção de Avaria
Tecnicas de Detenção de AvariaTecnicas de Detenção de Avaria
Tecnicas de Detenção de Avaria
 
Codigo limpo
Codigo limpoCodigo limpo
Codigo limpo
 

Mehr von leopoa

Functional - Fundamentals and Perspective Functional vs OO
Functional - Fundamentals and Perspective Functional vs OOFunctional - Fundamentals and Perspective Functional vs OO
Functional - Fundamentals and Perspective Functional vs OO
leopoa
 
Principles Desing in functional perspective
Principles Desing in functional perspectivePrinciples Desing in functional perspective
Principles Desing in functional perspective
leopoa
 
list comprehension
list comprehensionlist comprehension
list comprehension
leopoa
 
currying vs partial application
currying vs partial applicationcurrying vs partial application
currying vs partial application
leopoa
 

Mehr von leopoa (11)

Liderança e Gestão
Liderança e GestãoLiderança e Gestão
Liderança e Gestão
 
Paradigma funcional até leigos podem entender
Paradigma funcional até leigos podem entenderParadigma funcional até leigos podem entender
Paradigma funcional até leigos podem entender
 
Mudando cultura organizacional através da aprendizagem
Mudando cultura organizacional através da aprendizagemMudando cultura organizacional através da aprendizagem
Mudando cultura organizacional através da aprendizagem
 
Desafios de implantar uma arquitetura de microservices
Desafios de implantar uma arquitetura de microservicesDesafios de implantar uma arquitetura de microservices
Desafios de implantar uma arquitetura de microservices
 
Management 3.0 - Cultura organizacional
Management 3.0 - Cultura organizacional Management 3.0 - Cultura organizacional
Management 3.0 - Cultura organizacional
 
Algumas práticas para desenvolvedores
Algumas práticas para desenvolvedoresAlgumas práticas para desenvolvedores
Algumas práticas para desenvolvedores
 
Refatoração
RefatoraçãoRefatoração
Refatoração
 
Functional - Fundamentals and Perspective Functional vs OO
Functional - Fundamentals and Perspective Functional vs OOFunctional - Fundamentals and Perspective Functional vs OO
Functional - Fundamentals and Perspective Functional vs OO
 
Principles Desing in functional perspective
Principles Desing in functional perspectivePrinciples Desing in functional perspective
Principles Desing in functional perspective
 
list comprehension
list comprehensionlist comprehension
list comprehension
 
currying vs partial application
currying vs partial applicationcurrying vs partial application
currying vs partial application
 

Teoria das janelas quebradas - Pragmatic Programmer

  • 1. TEORIA DA JANELA QUEBRADA lEONARDO aMARILHO github.com/leopoa
  • 2. A origem James Q. Wilson e George L. Kelling escreveram um artigo na década de 1980 entitulado “Broken Windows”. Eles defendiam que uma estratégia de êxito para prevenir o vandalismo seria resolver os problemas quando eles são pequenos. “Repare as janelas quebradas rapidamente e será possível ver como os vândalos terão menos probabilidade de estragar mais”.
  • 3. livro The pragmatic programmer No livro ao lado, os autores fazem uma relação da origem da teoria com o que acontece com o desenvolvimento de software, ao longo do tempo
  • 4. Importância Refatorar (arrumar as janelas) é manutenção preventiva, evita o acumulo de débitos técnicos
  • 5. Débitos técnicos crescem rapidamente se não tratados E vão DEGRADANDO O DESIGN, O CÓDIGO E A ARQUITETURA DO SISTEMA
  • 6. Código legado Visualizar esses problemas, nos Passa a impressão de abandono e completo desinteresse pelo sistema
  • 7. Resultando No final, o programador estará fazendo mínimo necessário para resolver o problema
  • 8. Conclusão a idéia é que um código permanentemente bem escrito, é mais fácil de ser mantido assim. Em contra partida, um código cheio de gambiarras é um convite para outras novas.
  • 9. Remova as janelas quebradas Busque estratégias para lhe ajudar: - crie testes para começar a refatorar - elimine códigos duplicados e grandes - utilize e ensine as melhores práticas
  • 10. Antes tarde do que nunca Importante é começar, pode parecer simples ou ineficaz diante do cenário catastrófico, mas essa atitude pode ser ponto de partida que faltava!
  • 11. Lembre-se: cuidado com código Os programadores estão constantemente em “modo de manutenção”, sendo apenas os 10 primeiros minutos de código são originais, quando você os “cria” pela primeira vez, depois disso é só refactoring - “Pragmatic Programmer”
  • 12. Crie bons hábitos ● conserte as janelas quebradas o mais rápido ● deixe o código melhor do que você encontrou ● Não produza débito técnico!