Nessa tarefa, foi utilizado o ciclo de TDD (Test Driven Development) para escrever um programa que resolva o seguinte problema: escrever um dado número por extenso.
Os 3 estágios do TDD (red, green, refactor) foram explicitados por meio dos commits, de modo que cada mensagem de commit possui uma label no começo que identifica o estágio atual daquele commit.
Considero que a minha experiência de desenvolvimento com TDD foi muito satisfatória e proveitosa por uma série de motivos, muitos dos quais eu não esperava quando iniciei essa tarefa.
Primeiro de tudo, achei que o uso de TDD se mostrou extremamente útil para construir e pensar a solução passo a passo, visto que os testes acabaram de certa forma me guiando à solução, que ainda não estava clara no início do desenvolvimento. Além disso, a criação prévia dos testes a cada nova implementação me proporcionou uma maior segurança em relação ao código, de modo a sempre permitir a rápida verificação do funcionamento esperado do programa.
Mais ainda, a tarefa indiretamente me permitiu construir e consolidar outros conhecimentos não diretamente ligados ao TDD, de modo que pude aprender um pouco mais sobre kotlin, entendendo as suas estruturas e convenções, praticar a refatoração de código, explorando diferentes técnicas, além de aprofundar os meus conhecimentos de git, estudando mais sobre padrões de commit e comandos como o rebase.