SlideShare une entreprise Scribd logo
1  sur  114
TDDeCleanCode,garantiadeum
desenvolvimentosaudável
Maurício Andreazza Sganderla
• Desenvolvedor na uMov.me
• Aficionado por Agile
• No mercado de T.I. há 8 anos
• Formado em Sistemas de Informação
• Pós-Graduando em Métodos Ágeis
Jorge Oleques
• Desenvolvedor na uMov.me
• Entusiasta XP
• No mercado de T.I. há 6 anos
• Formado Analise e Desenvolvimento
• Pós-Graduando em Eng. Software na FGV
Quando uma pessoa não é
considerada saudável ?
Está acima do peso
Fuma
Alimentação desequilibrada
E o que o médico recomenda ?
Alimentação saudável
Praticar esportes
beber bastante água
Mas qual a relação?
sistema complexo
Estrutura
O que recomendamos
TDD + Clean Code !
US$ 60 bi em BUGS
Caos x prazo final
Hummmm!
Assim vou expor bem cedo
minhas incertezas e sem a
pressão da entrega.
E se eu desenvolver esse
código de uma maneira limpa e
clara?
Então quando eu for dar
manutenção ou tiver que evoluir
ele ...
... estará fácil de entender e ao
mesmo tempo estarei garantido
pelos testes.
É assim que eu quero
trabalhar. Mas como eu
faço TDD com Clean
Code?
Mas o que é um código Limpo?
"Além de seu criador, um desenvolvedor pode ler e
melhorar um código limpo..."(Dave Thomas)
"Um código limpo é simples e direto..."(Grady Boock)
"Você sabe que está criando um código limpo quando
cada rotina que você lê se mostra como você
esperava ..."(Ward Cunninghan)
"Expressa todas as idéias do projeto que estão no
sistema ...."(Ron Jeffries)
"Além de seu criador, um desenvolvedor pode ler e
melhorar um código limpo..."(Dave Thomas)
"Um código limpo é simples e direto..."(Grady Boock)
"Você sabe que está criando um código limpo quando
cada rotina que você lê se mostra como você
esperava ..."(Ward Cunninghan)
"Expressa todas as idéias do projeto que estão no
sistema ...."(Ron Jeffries)
0
100
Produtividade
Tempo
Produtividade x tempo
Atitude
Reclamar ajuda?
regra do escoteiro
Mão na massa
Nomes significativos
Revelar intenções
Nomes Descritivos
Faça apenas uma coisa
Algo estranho
bons comentários
maus comentários
Mudança de paradigma
Não é mágico
Prática de auxílio
Através do teste unitário
Acelera o feedback
Através do teste unitárioSiga o mantra
Faça falhar
Não tenha medo!
Resolva de maneira simples
Baby steps
mas cuidado
Simples <> Melhor
Confiante
Escute seu teste
Alguns sintomas
Alto acoplamento
baixa coesão
baixa coesão
Refatore
Pequeno ajuste
boas práticasBOAS PRÁTICAS
Nomes Representativos
Você decifrando testes
Nomes Representativos
data builders
data builders
Estrutura: like bdd
Suíte Atualizada
Juntando tudo !!!
O CENÁRIO
Temos o que evoluir no
código ?
Hora de evoluir
Só prejuízo....
CRIANÇA PAGA METADE !
Mas dá tempo?
Le grand finale....
VAMOS DISCUTIR?
referências
obrigado !!!
@m_andreazza
msganderla@umov.me
mauricioweb
http://umovme.cc
@joqueles
joleques@umov.me
joleques
http://umovme.cc

Contenu connexe

Tendances

Apresentação sobre Coding Dojo
Apresentação sobre Coding DojoApresentação sobre Coding Dojo
Apresentação sobre Coding DojoDenis Ferrari
 
Caipira ágil 2016 - Melhorando nossas decisões
Caipira ágil 2016 - Melhorando nossas decisõesCaipira ágil 2016 - Melhorando nossas decisões
Caipira ágil 2016 - Melhorando nossas decisõesJose Guedes
 
TDD - Test Driven Development
TDD - Test Driven DevelopmentTDD - Test Driven Development
TDD - Test Driven DevelopmentWaldyr Felix
 
Como se tornar Agile Tester
Como se tornar Agile TesterComo se tornar Agile Tester
Como se tornar Agile TesterElias Nogueira
 
Você ainda não pratica TDD?
Você ainda não pratica TDD?Você ainda não pratica TDD?
Você ainda não pratica TDD?Maurício Aniche
 
Agile Trends Campinas 2016 - Melhorando nossas decisões
Agile Trends Campinas 2016 - Melhorando nossas decisõesAgile Trends Campinas 2016 - Melhorando nossas decisões
Agile Trends Campinas 2016 - Melhorando nossas decisõesJose Guedes
 
Desenvolvimento produtos
Desenvolvimento produtosDesenvolvimento produtos
Desenvolvimento produtosIvan Tonet
 
Agile Testing - entregando valor do início a fim
Agile Testing - entregando valor do início a fimAgile Testing - entregando valor do início a fim
Agile Testing - entregando valor do início a fimElias Nogueira
 
Gerenciamento de projetos
Gerenciamento de projetosGerenciamento de projetos
Gerenciamento de projetosMUltimeios
 

Tendances (12)

Apresentação sobre Coding Dojo
Apresentação sobre Coding DojoApresentação sobre Coding Dojo
Apresentação sobre Coding Dojo
 
Caipira ágil 2016 - Melhorando nossas decisões
Caipira ágil 2016 - Melhorando nossas decisõesCaipira ágil 2016 - Melhorando nossas decisões
Caipira ágil 2016 - Melhorando nossas decisões
 
TDD - Test Driven Development
TDD - Test Driven DevelopmentTDD - Test Driven Development
TDD - Test Driven Development
 
Como se tornar Agile Tester
Como se tornar Agile TesterComo se tornar Agile Tester
Como se tornar Agile Tester
 
Desmistificando machine learning
Desmistificando machine learningDesmistificando machine learning
Desmistificando machine learning
 
Você ainda não pratica TDD?
Você ainda não pratica TDD?Você ainda não pratica TDD?
Você ainda não pratica TDD?
 
Agile Trends Campinas 2016 - Melhorando nossas decisões
Agile Trends Campinas 2016 - Melhorando nossas decisõesAgile Trends Campinas 2016 - Melhorando nossas decisões
Agile Trends Campinas 2016 - Melhorando nossas decisões
 
Metodos ageis thinkingdifferent
Metodos ageis thinkingdifferentMetodos ageis thinkingdifferent
Metodos ageis thinkingdifferent
 
Desenvolvimento produtos
Desenvolvimento produtosDesenvolvimento produtos
Desenvolvimento produtos
 
Agile Testing - entregando valor do início a fim
Agile Testing - entregando valor do início a fimAgile Testing - entregando valor do início a fim
Agile Testing - entregando valor do início a fim
 
Gerenciamento de projetos
Gerenciamento de projetosGerenciamento de projetos
Gerenciamento de projetos
 
Gerenciamento
GerenciamentoGerenciamento
Gerenciamento
 

Similaire à TDD e Clean Code: garantia de um desenvolvimento saudável

XP Conf BR: eXtreme Programming para programadores. Aplicando XP em seu código!
XP Conf BR: eXtreme Programming para programadores. Aplicando XP em seu código!XP Conf BR: eXtreme Programming para programadores. Aplicando XP em seu código!
XP Conf BR: eXtreme Programming para programadores. Aplicando XP em seu código!Mauricio Andreazza
 
Testador Tipo T
Testador Tipo TTestador Tipo T
Testador Tipo TGTS-CE
 
Carreira em testes de software
Carreira em testes de softwareCarreira em testes de software
Carreira em testes de softwareJoyce Bastos
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaRogerio Fontes
 
Caminho Do Desenvolvedor Amador Para o Profissional
Caminho Do Desenvolvedor Amador Para o ProfissionalCaminho Do Desenvolvedor Amador Para o Profissional
Caminho Do Desenvolvedor Amador Para o ProfissionalGiovanni Bassi
 
Euquipe, evoluindo como dev
Euquipe, evoluindo como devEuquipe, evoluindo como dev
Euquipe, evoluindo como devAlan Zanatta
 
Compilar Não Basta: Escreva código para pessoas e não apenas para máquinas - ...
Compilar Não Basta: Escreva código para pessoas e não apenas para máquinas - ...Compilar Não Basta: Escreva código para pessoas e não apenas para máquinas - ...
Compilar Não Basta: Escreva código para pessoas e não apenas para máquinas - ...Edlaine Zamora
 
Construindo bons relacionamentos entre desenvolvedores e testadores
Construindo bons relacionamentos entre desenvolvedores e testadoresConstruindo bons relacionamentos entre desenvolvedores e testadores
Construindo bons relacionamentos entre desenvolvedores e testadoresGabriel Oliveira
 
DevOps.pdf
DevOps.pdfDevOps.pdf
DevOps.pdfPyCaxias
 
Introdução ao TDD nas soluções Global AppCasting
Introdução ao TDD nas soluções Global AppCastingIntrodução ao TDD nas soluções Global AppCasting
Introdução ao TDD nas soluções Global AppCastingPedro Pereira Martins
 

Similaire à TDD e Clean Code: garantia de um desenvolvimento saudável (20)

XP Conf BR: eXtreme Programming para programadores. Aplicando XP em seu código!
XP Conf BR: eXtreme Programming para programadores. Aplicando XP em seu código!XP Conf BR: eXtreme Programming para programadores. Aplicando XP em seu código!
XP Conf BR: eXtreme Programming para programadores. Aplicando XP em seu código!
 
Introdução ao TDD
Introdução ao TDDIntrodução ao TDD
Introdução ao TDD
 
Testador Tipo T
Testador Tipo TTestador Tipo T
Testador Tipo T
 
Testador tipo t
Testador tipo tTestador tipo t
Testador tipo t
 
Extreme programming explicada
Extreme programming explicadaExtreme programming explicada
Extreme programming explicada
 
Extreme Programming Explicada
Extreme Programming ExplicadaExtreme Programming Explicada
Extreme Programming Explicada
 
Carreira em testes de software
Carreira em testes de softwareCarreira em testes de software
Carreira em testes de software
 
O que é ser um bom programador?
O que é ser um bom programador?O que é ser um bom programador?
O que é ser um bom programador?
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis Uberlândia
 
Caminho Do Desenvolvedor Amador Para o Profissional
Caminho Do Desenvolvedor Amador Para o ProfissionalCaminho Do Desenvolvedor Amador Para o Profissional
Caminho Do Desenvolvedor Amador Para o Profissional
 
Euquipe, evoluindo como dev
Euquipe, evoluindo como devEuquipe, evoluindo como dev
Euquipe, evoluindo como dev
 
Compilar Não Basta: Escreva código para pessoas e não apenas para máquinas - ...
Compilar Não Basta: Escreva código para pessoas e não apenas para máquinas - ...Compilar Não Basta: Escreva código para pessoas e não apenas para máquinas - ...
Compilar Não Basta: Escreva código para pessoas e não apenas para máquinas - ...
 
Construindo bons relacionamentos entre desenvolvedores e testadores
Construindo bons relacionamentos entre desenvolvedores e testadoresConstruindo bons relacionamentos entre desenvolvedores e testadores
Construindo bons relacionamentos entre desenvolvedores e testadores
 
DevOps.pdf
DevOps.pdfDevOps.pdf
DevOps.pdf
 
Metodos Ageis
Metodos AgeisMetodos Ageis
Metodos Ageis
 
Introdução ao TDD nas soluções Global AppCasting
Introdução ao TDD nas soluções Global AppCastingIntrodução ao TDD nas soluções Global AppCasting
Introdução ao TDD nas soluções Global AppCasting
 
Testes de unidade - Conhecendo e aplicando
Testes de unidade - Conhecendo e aplicandoTestes de unidade - Conhecendo e aplicando
Testes de unidade - Conhecendo e aplicando
 
Palestra Testes De Unidade Com JUnit
Palestra Testes De Unidade Com JUnitPalestra Testes De Unidade Com JUnit
Palestra Testes De Unidade Com JUnit
 
PHPZEIRO: Adote um framework
PHPZEIRO: Adote um frameworkPHPZEIRO: Adote um framework
PHPZEIRO: Adote um framework
 
O poder do TDD
O poder do TDDO poder do TDD
O poder do TDD
 

Plus de Mauricio Andreazza

Agilidade na política em uma das maiores cidades do rs- quem disse que não-
Agilidade na política  em uma das maiores cidades do rs- quem disse que não-Agilidade na política  em uma das maiores cidades do rs- quem disse que não-
Agilidade na política em uma das maiores cidades do rs- quem disse que não-Mauricio Andreazza
 
TDC 2016 : Agilidade na política? em uma das maiores cidades do rs? quem diss...
TDC 2016 : Agilidade na política? em uma das maiores cidades do rs? quem diss...TDC 2016 : Agilidade na política? em uma das maiores cidades do rs? quem diss...
TDC 2016 : Agilidade na política? em uma das maiores cidades do rs? quem diss...Mauricio Andreazza
 
Equipes de alto desempenho - Hora da Tecnologia
Equipes de alto desempenho - Hora da TecnologiaEquipes de alto desempenho - Hora da Tecnologia
Equipes de alto desempenho - Hora da TecnologiaMauricio Andreazza
 
TDC 2O15 - Equipes de alto desempenho: o mundo evoluiu e você parou?
TDC 2O15 - Equipes de alto desempenho: o mundo evoluiu e você parou?TDC 2O15 - Equipes de alto desempenho: o mundo evoluiu e você parou?
TDC 2O15 - Equipes de alto desempenho: o mundo evoluiu e você parou?Mauricio Andreazza
 
Agile brazil 2014 - Do legado ao green bar: uma imersão em testes unitários,...
Agile brazil 2014 -  Do legado ao green bar: uma imersão em testes unitários,...Agile brazil 2014 -  Do legado ao green bar: uma imersão em testes unitários,...
Agile brazil 2014 - Do legado ao green bar: uma imersão em testes unitários,...Mauricio Andreazza
 
Evento Senac: E você, faz parte de um time?
Evento Senac: E você, faz parte de um time?Evento Senac: E você, faz parte de um time?
Evento Senac: E você, faz parte de um time?Mauricio Andreazza
 
Workshop: Testes automatizados, Refactoring e Design Patterns
Workshop: Testes automatizados, Refactoring e Design PatternsWorkshop: Testes automatizados, Refactoring e Design Patterns
Workshop: Testes automatizados, Refactoring e Design PatternsMauricio Andreazza
 
TDC 2013 POA: Todo Super Herói tem suas fraquezas. Saiba como o Super Agile f...
TDC 2013 POA: Todo Super Herói tem suas fraquezas. Saiba como o Super Agile f...TDC 2013 POA: Todo Super Herói tem suas fraquezas. Saiba como o Super Agile f...
TDC 2013 POA: Todo Super Herói tem suas fraquezas. Saiba como o Super Agile f...Mauricio Andreazza
 
Meu teste falou e eu me fingi de surdo
Meu teste falou e eu me fingi de surdoMeu teste falou e eu me fingi de surdo
Meu teste falou e eu me fingi de surdoMauricio Andreazza
 
2012...E o meu software continua sem testes
2012...E o meu software continua sem testes2012...E o meu software continua sem testes
2012...E o meu software continua sem testesMauricio Andreazza
 
Me formei e agora, preparado para o mercado ou academia?
Me formei e agora, preparado para o mercado ou academia?Me formei e agora, preparado para o mercado ou academia?
Me formei e agora, preparado para o mercado ou academia?Mauricio Andreazza
 
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutos
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutosDo Caos ao Objetivo: Como implementamos Scrum em 5 minutos
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutosMauricio Andreazza
 

Plus de Mauricio Andreazza (12)

Agilidade na política em uma das maiores cidades do rs- quem disse que não-
Agilidade na política  em uma das maiores cidades do rs- quem disse que não-Agilidade na política  em uma das maiores cidades do rs- quem disse que não-
Agilidade na política em uma das maiores cidades do rs- quem disse que não-
 
TDC 2016 : Agilidade na política? em uma das maiores cidades do rs? quem diss...
TDC 2016 : Agilidade na política? em uma das maiores cidades do rs? quem diss...TDC 2016 : Agilidade na política? em uma das maiores cidades do rs? quem diss...
TDC 2016 : Agilidade na política? em uma das maiores cidades do rs? quem diss...
 
Equipes de alto desempenho - Hora da Tecnologia
Equipes de alto desempenho - Hora da TecnologiaEquipes de alto desempenho - Hora da Tecnologia
Equipes de alto desempenho - Hora da Tecnologia
 
TDC 2O15 - Equipes de alto desempenho: o mundo evoluiu e você parou?
TDC 2O15 - Equipes de alto desempenho: o mundo evoluiu e você parou?TDC 2O15 - Equipes de alto desempenho: o mundo evoluiu e você parou?
TDC 2O15 - Equipes de alto desempenho: o mundo evoluiu e você parou?
 
Agile brazil 2014 - Do legado ao green bar: uma imersão em testes unitários,...
Agile brazil 2014 -  Do legado ao green bar: uma imersão em testes unitários,...Agile brazil 2014 -  Do legado ao green bar: uma imersão em testes unitários,...
Agile brazil 2014 - Do legado ao green bar: uma imersão em testes unitários,...
 
Evento Senac: E você, faz parte de um time?
Evento Senac: E você, faz parte de um time?Evento Senac: E você, faz parte de um time?
Evento Senac: E você, faz parte de um time?
 
Workshop: Testes automatizados, Refactoring e Design Patterns
Workshop: Testes automatizados, Refactoring e Design PatternsWorkshop: Testes automatizados, Refactoring e Design Patterns
Workshop: Testes automatizados, Refactoring e Design Patterns
 
TDC 2013 POA: Todo Super Herói tem suas fraquezas. Saiba como o Super Agile f...
TDC 2013 POA: Todo Super Herói tem suas fraquezas. Saiba como o Super Agile f...TDC 2013 POA: Todo Super Herói tem suas fraquezas. Saiba como o Super Agile f...
TDC 2013 POA: Todo Super Herói tem suas fraquezas. Saiba como o Super Agile f...
 
Meu teste falou e eu me fingi de surdo
Meu teste falou e eu me fingi de surdoMeu teste falou e eu me fingi de surdo
Meu teste falou e eu me fingi de surdo
 
2012...E o meu software continua sem testes
2012...E o meu software continua sem testes2012...E o meu software continua sem testes
2012...E o meu software continua sem testes
 
Me formei e agora, preparado para o mercado ou academia?
Me formei e agora, preparado para o mercado ou academia?Me formei e agora, preparado para o mercado ou academia?
Me formei e agora, preparado para o mercado ou academia?
 
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutos
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutosDo Caos ao Objetivo: Como implementamos Scrum em 5 minutos
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutos
 

TDD e Clean Code: garantia de um desenvolvimento saudável