Último Dojo de Python, deixando saudade, e estimulo para estudar mais e se aprimorar.O encontro foi muito tranquilo, escolhemos um kata menos matemático o que diminuiu o “stress” e tempo no planejamento. Em alguns momentos tivemos dificuldades na sintaxe mas foram resolvidas pelo uso do “help” do Python através do Terminal.
Após a Retrospectiva, tivemos que escolher, por votação, a linguagem que irá nos acompanhar durante os próximos dois meses, o escolhido então foi “Ruby + Cucumber”. O desafio vai ser grande, mas estamos dispostos a compartilhar dúvidas e conhecimentos, o que vêm acontecendo, não só com os dojos mas na prática dos métodos ageis.
Pensando sempre em inovar os Dojos, tivemos um mini lanchinho durante a Retrospectiva.
Origem do kata : http://www.dcc.fc.up.pt/oni/problemas/2005/qualificacao/probC.html
Código fonte do encontro: https://gist.github.com/713616
anagrama.py
#@author Rafael Salomao #@author Natalia Marcondes #@author Marco Moura #@author Carlos Eduardo #@author Patricia Carvalho class Anagrama: @staticmethod def comparar(palavra1, palavra2): lista_palavra1 = Anagrama.palavra_2_lista_and_sort(palavra1) lista_palavra2 = Anagrama.palavra_2_lista_and_sort(palavra2) return lista_palavra1 == lista_palavra2 @staticmethod def palavra_2_lista_and_sort(palavra): lista = [] lista2 = [] for i in palavra: lista.append(i) return sorted(lista) if __name__ == "__main__": print "Hello World"
new_test.py
#@author Rafael Salomao #@author Natalia Marcondes #@author Marco Moura #@author Carlos Eduardo #@author Patricia Carvalho import unittest from Anagrama import Anagrama class New_TestCase(unittest.TestCase): def test_identificar_anagrama_duas_palavras_fio_foi(self): self.assertTrue(Anagrama.comparar("fio", "foi")) def test_identificar_anagrama_duas_palavras_fui_foi(self): self.assertFalse(Anagrama.comparar("fui", "foi")) def test_lista_palavra_casa_c_a_s_a(self): self.assertEquals(["a","a","c","s"],Anagrama.palavra_2_lista_and_sort("casa")) if __name__ == '__main__': unittest.main()
Retrospectiva:
Bom:
– Katas menos matemáticos
– pontualidade nos horários
– Lanchinho final
– uso do terminal para consulta
– planejamento rápido
Ruim:
– Falta de um especialista na linguagem
– Falta de conhecimento aprofundado na linguagem
– uso da internet como forma de pesquisa
– Parar o tempo para pesquisar solução, deveria fazer parte do tempo do piloto
– último dojo do python
Próximos:
– experimentar método ping pong
– Opções: Java + JUnit , JavaScript + JSUnit, Ruby + Cucumber, .Net, Android
– Escolhido: Ruby + Cucumber
Fotos do encontro