coding dojo .net architects - 30.01.2010
Post on 11-Nov-2014
4.416 Views
Preview:
DESCRIPTION
TRANSCRIPT
Coding Dojo
Vinicius Quaiatohttp://viniciusquaiato.com
http://dojo.dotnetarchitects.net
O que é ?• Coding Dojo é uma reunião de
desenvolvedores reunidos para resolver(ao menos tentar) um desafio.• O desafio deve ser possível de
desenvolver por todos.
Por que ?• Um dos objetivos do Coding Dojo é
divertir, enquanto se treina as habilidades de desenvolvimento–Codificação–Testes–Design–Lógica–E por que não, arquitetura?!
Treino !• Sim, os desenvolvedores precisam
treinar!• Buscar novos desafios e novas
maneiras de resolver os desafios.• Transferir conhecimentos.• A prática leva à perfeição.
Como é ?• Ambiente não competitivo! Ninguém
quer provar ser melhor.• Desenvolvedores de todos os níveis
podem e devem participar.• É um local/ambiente para
experimentar e testar.
Como funciona ?
• Randori Kata–Duplas (piloto e co-piloto)– Todos presentes podem participar–Cada um tem 5 minutos para codificar• Sempre usando TDD, Baby Steps e explicando o
que está sendo feito–Ao final de 5 minutos, co-piloto vira piloto e
outro vira co-piloto
Como funciona ?
• Platéia fica em silêncio enquanto algum dos testes estiver vermelho.
Fim ?• A sessão termina com cerca de 1h e
30min.• Nem sempre o desafio é concluído, e
este não é o objetivo.• Os dojos não se continuam.
Retrospectiva• Uma retrospectiva deve ser feita.• Avaliam-se os pontos positivos e
negativos.• Debatem-se estes pontos.
Desafios• FizzBuzz• TennisGame
FizzBuzz• Dada uma sequência de números:– Sempre que um número for divisível por 3
deve-se ter como saída a palavra “Fizz”;– Sempre que um número for divisível por 5
deve-se ter como saída a palavra “Buzz”;– Se o número for divisível por 3 e por 5 deve-
se ter como saída a palavra “FizzBuzz”;
FizzBuzz• Variantes:– Se o número contiver o algarismo 3
deve-se produzir como saída a palavra “Fizz”;– Se o número contiver o algarismo 5
deve-se produzir como saída a palavra “Buzz”;
FizzBuzz• Exemplo:– 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
14, 15, 16 ...– 1, 2, Fizz, 4, Buzz, Fizz, 7, 8, Fizz, Buzz,
11, Fizz, Fizz, 14, Fizz Buzz, 16 ...
TENNIS GAME• Implementar um jogo de tênis,
simples.– Pontuação:
• Cada jogador pode marcar 0, 15, 30, 40 pontos• Se o jogador possue 40 e vence a bola corrente, ele
ganha o jogo• Se ambos possuem 40, estão em deuce
– Quem vence a bola ganha vantagem, e se vencer novamente ganha o jogo
– Se o jogador sem vantagem vence a bola, o jogo volta para deuce
TENNIS GAME• Exemplo:– P1: 15, 30, 40, Game!– P2: 0, 15, 0
– P1: 15, 30, 30– P2: 15, 30, 40, Game!
top related