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

Post on 11-Jun-2015

185 views 3 download

description

Uma pessoa é considerada saudável quando leva uma vida regrada, sem fumo, com alimentação equilibrada e praticando atividades físicas regularmente. Um projeto para ser considerado saudável precisa preencher alguns requisitos como uma manutenção simples e rápida, boa cobertura de testes, Test-Drive-Developement (TDD) e Clean Code. O projeto evolutivo talvez seja o maior desafio de um desenvolvimento incremental por isso nessa palestra vamos apresentar as tecnicas TDD, Clean Code e ver como elas podem nos auxilar na criação de um projeto “robusto” e “saudável”.

Transcript of TDD e Clean Code, garantia de um desenvolvimento saudável

TDD e Clean Code, garantia de um

desenvolvimento saudável

Maurício Andreazza Sganderla

• Desenvolvedor na• 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• 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 !

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

100Prod

utividade

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