Design de APIs
Jonas Abreu em 08/08/2008Dias atrás encontrei um vídeo que veio de encontro com muito do que tenho feito ultimamente. Java e API.
Estou trabalhando em dois projetos Open Source (falo deles assim que lançar a primeira versão) em java. Consequentemente tenho que me preocupar com a forma que os programadores vão usar essas APIs.
Embora pareça simples (em um dos casos o projeto simplesmente foi extraído de um outro projeto maior), não é nem um pouco trivial. Apenas pense que cada mudança que for feita poderá causar impacto em algum código perdido pelo mundo e você entenderá a complicação.
Depois de já ter definido as duas APIs (pelo menos a parte beeeem inicial), encontrei esse Google Tech Talk do Joshua Bloch em que ele fala exatamente sobre isso.
Uma das coisas que mais gostei no vídeo, é que os exemplos de bons e péssimos designs são tirados do código da especificação J2SE, ou seja, código com o qual lidamos diariamente (a parte em que ele fala sobre CORBA é demais!).
O vídeo tem uma hora de duração (por mim poderia ser ainda maior, pois a palestra é realmente muito boa).
Espero que gostem!