Literaturas sobre TDD, XP, e testes

Amigos do fórum,

Por gentileza, os colegas teriam livros legais para indicar sobre os temas acima?

Preciso aprender a “pensar” orientado a testes. Trabalho com desenvolvimento a um bom tempo, mas nao com testes unitários de código. Tenho um projeto que graças a Deus funciona, hehe, mas nao tem testes automatizados…O código usa muita injeção de dependencia, desacoplamento, com muitas interfaces, etc…a principio estaria “facil” de criar os testes, mas por ainda nao ter “abraçado a mudança” quando preciso testar ou eu faço um teste manual (em uma classe separada) ou levanto a aplicação toda (!), só pra descobrir que deu pau no metodo…não tá muito produtivo…

Preciso mudar minha maneira de pensar e acho que uns livros iam ajudar.

Obrigado.

Além de bons livros: TDD - desenvolvimento guiado por testes (Kent Beck) livro bom, pragmático e acredito que do cunhador desse termo.

Há também ótimos links que você já pode começar a ler agora:
Desenvolvimento orientado a testes do improveIt.
:: Jaba :: TDD na prática com desenvolvimento de um jogo.

Todos me ajudaram muito. E a imersão pode ser maior ainda quando estiver trabalhando com ruby, porque os tutorials os frameworks a comunidade já é mais testadora dai vai vir outros conceitos como BDD e a coisa fica mais interessante.

[quote=dreampeppers99]Além de bons livros: TDD - desenvolvimento guiado por testes (Kent Beck) livro bom, pragmático e acredito que do cunhador desse termo.

Há também ótimos links que você já pode começar a ler agora:
Desenvolvimento orientado a testes do improveIt.
:: Jaba :: TDD na prática com desenvolvimento de um jogo.

Todos me ajudaram muito. E a imersão pode ser maior ainda quando estiver trabalhando com ruby, porque os tutorials os frameworks a comunidade já é mais testadora dai vai vir outros conceitos como BDD e a coisa fica mais interessante.[/quote]

Obrigaco,cara.

Já que o assunto é literatura, o que vcs indicam p escrever api’s direito? Isto é, algo que vá além dos conselhos sobre desacoplamento e coesão.

thanks in advance!

[quote=rmonico]Já que o assunto é literatura, o que vcs indicam p escrever api’s direito? Isto é, algo que vá além dos conselhos sobre desacoplamento e coesão.

thanks in advance![/quote]
Clean Code - Uncle Bob
Refactoring - Martin Fowler
Design Patterns - GoF

No desenvolvimento de APIs devem ser tomados uma séria de cuidados que geralmente não temos nas aplicações “normais”, tipo:

  • design cuidadoso das interfaces públicas, pois qualquer alteração pode quebrar código de clientes
  • validação de objetos em níveis que beiram a paranóia :slight_smile:
  • preocupação com a possibilidade de objetos tornarem-se corrompidos, trabalhando com imutabilidade e cópias defensivas
  • utilização criteriosa da herança (ou desenvolva pensando em herança ou proíba de vez)

Tudo isso e muito mais você encontra no Effective Java, do Joshua Block.

Vlw pessoal! Alguém aí já leu o “Practical API Design: Confessions of a Java Framework Architect” de um tal de “Jaroslav Tulach”?