15 de jan de 2014

Aplicando Refactoring e TDD com Delphi

Nas últimas semanas dediquei a literaturas técnicas onde li o livro do Kent Beck - Test Driven Development by Example (Desenvolvimento orientado a testes através de exemplos, na tradução ao pé da letra). Atualmente estou lendo Martin Fowler - Refactoring: Improve the Design of Existing Code (Refatoração: Melhorando o Design de Código Existente, tradução ao pé da letra).

O Kent Beck é muito conhecido na comunidade Agile. Ele é um dos precursores, e um dos autores do manifesto do movimento ágil.
Mas meu objetivo aqui não e falar dos autores, mas sim dividir o conhecimento com vocês.
Os livros, como são baseados em exemplos, possuem exemplos completos da prática do TDD e do refactoring, mas todos esses exemplos estão na linguagem Java.

O desejo é transmitir esse conhecimento para o leitor que faz uso da IDE Delphi. Sou usuário há anos do Delphi, e o que ouço por aí, é ver as pessoas dizendo que o Delphi não é orientado a objetos, que Delphi não permite seguir nenhum paradigma de design, e etc. Assim como também vejo muita gente que trabalha com Delphi achar que orientação à objetos é ficar colocando componentes de tela em um formulário e interagir com eles através do código. Pobres coitados!

Bom, eu vou tentar nos próximos posts, refazer e explicar em português os ensinamentos repassados pelos livros, e aplicar os exemplos em Delphi. Por que? Porque esse assunto voltado em Delphi é escasso, e as pessoas insistem em achar que em Delphi nada é possível.

Vamos lá?

Os posts serão organizados da seguinte forma:


  1. Instalação da Dunit no Delphi
  2. Exemplo de refactoring com TDD
  3. Definição de conceitos básicos.
Estanho né? Vamos começar com exemplos e não com definições!
Martin Fowler diz no seu livro que quando vai a uma palestra onde será divulgado um novo conceito, normalmente o palestrante inicia pelos conceitos. Definição de conceitos sem você saber do que se trata é muito chato e muitas vezes da até sono. Então é só na hora dos exemplos práticos que o Martin acorda e confere pra que serve aquilo.

Eu não queria ser um palestrante para um cara desses nem pensar. Mas ele tem toda a razão. E por isso, vamos começar com a prática. E depois você decide se vale a pena conhecer os conceitos ou não.
Então é isso! Até o Próximo post.




2 comentários:

  1. Boa Noite
    André

    Poderia colocar algo sobre POO em Dephi ?

    Att:
    Jr Carvalho

    ResponderExcluir
    Respostas
    1. Jr. isso pode ser uma ideia para uma próxima sequência de posts. Meu objetivo agora, é concluir essa parte de TDD, e depois posso tentar colocar algo sobre POO. Mas vale ressaltar que nesse assunto de TDD estamos aplicando os conceitos de POO, afinal temos classes e objetos. Mais pra frente teremos situações de herança. Essas são características básicas de um código utilizando conceitos de POO.

      Excluir