A duas semanas atrás participei do Ruby Masters Conf. E um dos palestrantes foi o David Chelimsky que é o principal desenvolvedor e mantenedor do RSpec desde 2006.
Até a sua palestra eu não tinha certeza quanto as reais vantagens de programar usando BDD e TDD, pra ser sincero, muitas vezes, achava uma grande perda de tempo, já que você acaba programando o triplo de código do normal, quebra sua programação em diversos micro processos. Além disso, eu também nunca tinha entendido o motivo de tanta febre de refactoring.
Depois da excelente palestra ministrada por ele. Tive uma luz conceitual. Mais ou menos assim. Opa, espera um pouco, não é o método que é ruim, muito pelo contrário, sou eu que nunca peguei o espírito da programação orientada a comportamento e testes.
Mas enfim, depois de sua palestra, ele indicou o seu próprio livro, The RSpec Book. Que é escrito por David Chelimsky, Dave Astels, Zach Dennis, Aslak Hellesøy, Bryan Helmkamp e Dan North.
Resolvi comprar o livro pra pelo menos conhecer um pouco mais a fundo essa metodologia de programação e desenvolvimento de software.
E além do livro tratar de aspectos teóricos, de um novo tipo de abordagem em que todas as partes interessadas no software devem se comunicar de uma forma diferente. Até aspectos bem técnicos de Cucumber e RSpec.
Além do livro, tratar muito de comunicação. Comunicação de código. Ou algo do tipo: como todos os envolvidos nesse projeto, desde de quem pague a conta, até quem faz os algoritmos mais malucos, podem falar entre si nesses testes, pra que todo mundo se entenda. E o resultado final, seja o melhor possível.
Por fim, o livro deixa bem claro que não é um livro sobre ruby, apesar de tanto o Cucumber, quanto o RSpec, serem nativos do Ruby, eles poderiam rodar em outras plataformas também. Mas é um livro sobre habilidade de programação. E realmente, ele tem aspectos técnicos e bastante específicos e informativos para o RSpec e Cucumber que por serem nativos para a linguagem Ruby, naturalmente são mais facilmente absorvidos e colocados em prática pelos rubystas. Porém a maior riqueza do livro está nos conceitos propostos e apresentados sobre essa nova forma de pensar um software. E quebrar paradigmas tradicionais muitas vezes enraizados e que nem sempre são a melhor abordagem para você ou sua empresa.
Enfim, o livro é muito bom, altamente recomendado. A versão de papel vendida no Brasil está muito cara, se for comprar em papel vale mais a pena comprar pela Amazon.
Mas eu recomendo mesmo comprar via Pragmatic Bookshelf a versão em PDF, MOBI e EPUB, sem DRM como já é de costume da PraProg. E caso você seja um apreciador do livro de papel. Compre a versão impressa no bundle, que sai o mesmo preço da versão apenas impressa aqui no Brasil.
Pingback: Como aliar BDD/TDD a técnicas como GTD e pomodoro