SlideShare una empresa de Scribd logo
1 de 87
Descargar para leer sin conexión
TDD e Clean Code, garantia de um
desenvolvimento saudá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 !
Mas o que é um código Limpo?
"Um código limpo é simples e direto..."(Grady Boock)

"Além de seu criador, um desenvolvedor pode ler e
melhorar um código limpo..."(Dave Thomas)

"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)
"Um código limpo é simples e direto..."(Grady Boock)

"Além de seu criador, um desenvolvedor pode ler e
melhorar um código limpo..."(Dave Thomas)

"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)
Produtividade

100

0

Tempo

Produtividade x tempo
Fazer o que então?
Reclamar ajuda?
Atitude
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
evoluir design
Siga o mantra
Através do teste unitário
Faça falhar
Não tenha medo!
Baby steps
Resolva de maneira simples
Escute seu teste
Refatore
Reinicie o ciclo
O que devemos cuidar?
COESÃO

Balanceamento

ACOPLAMENTO
Não há mundo perfeito
Pequeno ajuste
boas práticas
BOAS PRÁTICAS
Nomes Representativos
Nomes Representativos
data builders
data builders
Estrutura: like bdd
Suíte Atualizada
#VERDADEIRO
X

O CENÁRIO
#falso
#1
O CENÁRIO
Agora que entendi,
vouO CENÁRIO
sair aplicando
tdd em tudo!
#falso
O CENÁRIO
#2
O CENÁRIO
Feito! Então é só
começar pelo teste
e quando estiver
O CENÁRIO
verde está pronto !
#MITO
O CENÁRIO
#3
O CENÁRIO
É NECESSÁRIO
CONHECIMENTOS EM
BOAS PRÁTICAS DE
O CENÁRIODE
ENGENHARIA
SOFTWARE
#VERDADE
O CENÁRIO
#4
O CENÁRIO
TDD só serve para
criar um código
O Testado!
CENÁRIO
#MITO
O CENÁRIO
referências
obrigado !!!
@joqueles

@m_andreazza

joleques@umov.me

msganderla@umov.me

joleques

mauricioweb

http://umovme.cc

http://umovme.cc

Más contenido relacionado

Similar a TDD e Clean Code

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
 
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
 
Euquipe, evoluindo como dev
Euquipe, evoluindo como devEuquipe, evoluindo como dev
Euquipe, evoluindo como devAlan Zanatta
 
Carreira em testes de software
Carreira em testes de softwareCarreira em testes de software
Carreira em testes de softwareJoyce Bastos
 
O mundo da agilidade
O mundo da agilidadeO mundo da agilidade
O mundo da agilidadeThiago Burgos
 
DevOps.pdf
DevOps.pdfDevOps.pdf
DevOps.pdfPyCaxias
 
Treinamento TDD - Atech
Treinamento TDD - AtechTreinamento TDD - Atech
Treinamento TDD - Atechcesarcneto
 
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
 
TDC2016SP - Dinâmica e Facilitações
TDC2016SP - Dinâmica e FacilitaçõesTDC2016SP - Dinâmica e Facilitações
TDC2016SP - Dinâmica e Facilitaçõestdc-globalcode
 
DevOps no mundo real - QCON 2014
DevOps no mundo real - QCON 2014DevOps no mundo real - QCON 2014
DevOps no mundo real - QCON 2014Rodrigo Campos
 
Métodos Ágeis: O que é folclore e o que é real? (QCON SP 2012)
Métodos Ágeis: O que é folclore e o que é real? (QCON SP 2012)Métodos Ágeis: O que é folclore e o que é real? (QCON SP 2012)
Métodos Ágeis: O que é folclore e o que é real? (QCON SP 2012)Maurício Aniche
 
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
 

Similar a TDD e Clean Code (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
 
Extreme programming explicada
Extreme programming explicadaExtreme programming explicada
Extreme programming explicada
 
Extreme Programming Explicada
Extreme Programming ExplicadaExtreme Programming Explicada
Extreme Programming Explicada
 
Testador Tipo T
Testador Tipo TTestador Tipo T
Testador Tipo T
 
Testador tipo t
Testador tipo tTestador tipo t
Testador tipo t
 
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 - ...
 
O poder do TDD
O poder do TDDO poder do TDD
O poder do TDD
 
Euquipe, evoluindo como dev
Euquipe, evoluindo como devEuquipe, evoluindo como dev
Euquipe, evoluindo como dev
 
Carreira em testes de software
Carreira em testes de softwareCarreira em testes de software
Carreira em testes de software
 
O mundo da agilidade
O mundo da agilidadeO mundo da agilidade
O mundo da agilidade
 
DevOps.pdf
DevOps.pdfDevOps.pdf
DevOps.pdf
 
Treinamento TDD - Atech
Treinamento TDD - AtechTreinamento TDD - Atech
Treinamento TDD - Atech
 
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
 
Agilidade no governo 02
Agilidade no governo 02Agilidade no governo 02
Agilidade no governo 02
 
TDC2016SP - Dinâmica e Facilitações
TDC2016SP - Dinâmica e FacilitaçõesTDC2016SP - Dinâmica e Facilitações
TDC2016SP - Dinâmica e Facilitações
 
DevOps no mundo real - QCON 2014
DevOps no mundo real - QCON 2014DevOps no mundo real - QCON 2014
DevOps no mundo real - QCON 2014
 
Métodos Ágeis: O que é folclore e o que é real? (QCON SP 2012)
Métodos Ágeis: O que é folclore e o que é real? (QCON SP 2012)Métodos Ágeis: O que é folclore e o que é real? (QCON SP 2012)
Métodos Ágeis: O que é folclore e o que é real? (QCON SP 2012)
 
O que é ser um bom programador?
O que é ser um bom programador?O que é ser um bom programador?
O que é ser um bom programador?
 
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
 

Más 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
 

Más 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