Javafree

Entrevista com Klaus Wuestefeld, o criador do Prevayler

Publicado por Tutoriais Admin em 16/08/2009 - 17.578 visualizações

Em entrevista descontraída ao JavaFree, Klaus Wuestefeld fala sobre um dos mais conhecidos e polêmicos projetos brasileiros, o Prevayler. Klaus é o criador e um dos desenvolvedores deste projeto que atua como uma camada de persistência, ou melhor, prevalência de informações. Versão em Inglês

1. Quem é você, Klaus? Bom, sou o cara do Prevayler , do Extreme Programming e da Computação Soberana . Ou seja, sou um inconformado. Sou sócio fundador da Objective Solutions e comecei a trabalhar recentemente no db4o , o OODBMS livre mais usado no mundo. Você também podem dar uma olhada na minha página pessoal .

2. Klaus, comente um pouco sobre o Prevayler, o que ele é, e quais os objetivos / metas que ele pretende alcançar. O Prevayler é a camada de prevalência livre para Java. Prevalência é a arquitetura natural a se utilizar em qualquer sistema que tenha memória RAM suficiente para conter todos os seus dados. O Prevayler não tem meta nenhuma porque à medida em que a memória RAM vai ficando mais barata, torna-se inevitável a adoção gradual da prevalência. É só uma questão de tempo.


3. Como o público brasileiro e estrangeiro tem visto este projeto? Tens recebido o apoio esperado?
O Prevayler é muito mais usado na Alemanha (talvez por causa do meu nome) e nos EUA. O brasileiro é muito deslumbrado com o que vem de fora. Santo de casa não faz milagre.

Sim. No Brasil, recebi bastante apoio do pessoal do DFJug, SouJava, da revista MundoJava e do próprio JavaFree. As palestras sobre o Prevayler também são muito bem recebidas na maioria dos evento de Java e software livre.

4. O conceito de Prevalência ainda é um susto para as pessoas?
O Prevayler é a cura para um câncer que as pessoas nem sabem que têm. Nossa comunidade de desenvolvedores de software está tão atrofiada com o uso do banco de dados que a maioria das pessoas não faz a menor idéia do que seja OO de verdade. O pior é que acham que sabem.

5. Partindo para perguntas mais técnicas, o que o Java 5 com funcionalidades como o Generics, pode trazer de útil para os desenvolvedores que usarem o Prevayler?
Todas as funcionalidades do Java 5 podem e devem ser usadas nas aplicações prevalecentes porque seus objetos de negócios são todos objetos Java 100 % nativos. O mesmo não pode ser dito de aplicações que salvam seus objetos em bancos de dados, a não ser que inventem um banco de dados com suporte a " generics ", por exemplo.

Essa é uma vantagem do Prevayler para a qual eu não tinha me atentado ainda. As aplicações podem imediatamente tirar vantagem de qualquer inovação na linguagem; e acredito que teremos muitas daqui para frente, por causa da concorrência com. NET.

6. O que você acha dos frameworks de mapeamento Objeto / Relacional, de especificações como o EJB 3.0 e os bancos de dados OO? Eles ainda tem alguma chance contra o Prevayler?
São melhores que nada, por um lado, porque facilitam a vida do desenvolvedor. São extremamente prejudiciais, por outro lado, porque fazem muitos desenvolvedores pensarem que OO é só ler e escrever objetos burros. Quantas vezes você já viu alguém usar o " observer design pattern ", por exemplo, em objetos mapeados para um banco de dados relacional? E o " state pattern "? E o " visitor pattern "? Qualquer " pattern "? É triste.

A medida que a memória RAM vai se tornando cada vez mais barata, acredito ser inevitável a adoção gradual da prevalência. Existem barreiras de ignorância e de medo muito grandes a serem vencidas, porém, e, até lá, as tecnologias que você mencionou vão continuar incrustadas na cabeça de muito gerente retranqueiro (vide COBOL). Somos como os bebês nascidos dentro da Matrix: brutalmente atrofiados pelo uso de banco de dados. Passar a usar a prevalência é uma sensação parecida com a do Neo: " Meus olhos doem. ". Morpheus responde: " É porque você está usando-os pela primeira vez. "

7. Você ainda usa banco de dados?
Infelizmente sim. Ainda serei obrigado a usar um banco de dados sempre que não tiver RAM suficiente para algum de meus sistemas. Isso ocorre principalmente em dispositivos móveis (PDAs, celulares, etc) e sistemas embarcados. Mesmo assim, quero aproveitar o máximo da OO que Java me oferece, sem ficar restrito a registros burros em tabelas. Preciso que o banco de dados seja o mais leve e transparente possível. É com esse intuito que estou trabalhando no db4o . Ele tem 4 anos de estrada e acabou de tornar-se livre através da GPL.

8. O sistema operacional feito em java, JNode, poderá fazer uso do Prevayler. Qual a sua opinião sobre isso? Vai dar certo? O prevayler poderá atender a todas as necessidades de um SO?
Eu não usaria o Prevayler nesse caso. Para usar o Prevayler é necessário que a aplicação disponha de RAM suficiente para conter todos seus dados. Devido ao declínio constante do preço da memória RAM, esse já é o caso para muitas aplicações, mas ainda não para um SO genérico.

9. Existe algo que você gostaria de mudar na especificação do java para facilitar a vida dos desenvolvedores do Prevayler?
A Serialização padrão do Java poderia ser melhorada no sentido de suportar melhor a evolução do esquema de objetos (alteração na estrutura das classes).

10. Já existe algo planejado como uma lista de novas características para o Prevayler 3?
A novidade mais legal do Prevayler 3 vai ser a replicação tolerante a falhas. As aplicações vão poder rodar em modo " cluster " sem alterar uma linha de código sequer. A replicação normal já pode ser experimentada no Prevayler 2.

11. Determinados sistemas são tão fortemente acoplados a SQL que se tornam difíceis de serem convertidos para uma abordagem OO. Em alguns, uma única consulta no banco de dados possui mais de 500 linhas, várias funções de cálculo sobre os valores e mais de 15 tabelas relacionadas. O que você diria aquelas pessoas que possuem esse tipo de sistema e querem migrar para o OO usando o Prevayler?

Inicialmente, vão sentir-se como o Neo, boiando naquela água, completamente atrofiados por terem vivido a vida inteira dentro de uma bolha de banco de dados. Aos poucos, vão exercitar sua nova liberdade e seus músculos vão se desenvolver. Então, quando me disserem: " I know OO ", vou ansiosamente responder: " Show me ".

12. Que leituras você indicaria para as pessoas que estão iniciando no mundo da Prevalência hoje?
As seguintes:

Obrigatório:

Opcional: Para aqueles que acham que já sabem OO:
13. Para finalizar a entrevista, temos uma questão que sempre acaba ocorrendo na mente de quem assiste as tuas palestras ou lê as tuas palavras. A pergunta possui suas variações, mas utilizaremos a versão de um de nossos colaboradores: Voce já foi internado alguma vez em manicômio? Responda como quiser.
Sim. Toda vez que vou dar uma palestra, preciso de autorização especial pra sair.;)

Na verdade, sou apenas um profeta. Não fui eu que inventei Extreme Programming e, nos casos da prevalência e da computação soberana , não as considero " invenções " minhas, mas apenas visões de um futuro inevitável.

Podem dizer que sou louco mas, primeiro, têm que provar que estou errado.;)

comentários: 0

Tópicos Relacionados