Saltar para o conteúdo

Plain Old Java Objects

Origem: Wikipédia, a enciclopédia livre.

Plain Old Java Objects, ou POJOs, são objetos Java que seguem um design simplificado em contraposição aos EJBs. Um JavaBean é um POJO que segue definições rígidas de estrutura (construtor default sem argumentos e métodos que seguem o padrão de getters e setters para seus atributos). Os POJOs não possuem nenhum conhecimento de código de infra-estrutura.

POJO, um acrônimo para Plain Old Java Objects, é suportado pelos advogados da idéia de que quanto mais simples o projeto, melhor. O nome é usado para enfatizar que o objeto em questão não possui nenhuma característica especial, como as requeridas em um EJB, por exemplo. O termo foi inventado por Martin Fowler, Rebecca Parsons e Josh MacKenzie em Setembro de 2000. "Nós queríamos saber porque as pessoas eram contra o uso de objetos regulares em seus sistemas e concluímos que era devido a falta de um nome extravagante para eles. Assim nós demos-lhes um, e funcionou muito bem.". O termo segue o padrão de atribuir um nome para tecnologias que não possuem nenhuma característica nova, como POTS (Plain Old Telephone Service).

O termo ganhou aceitação por causa da necessidade de um termo comum e facilmente inteligível que contrasta com complicados frameworks de objetos. É mais atrativo do que o termo beans do Java devido ao conflito existente entre JavaBeans e Enterprise JavaBeans. O primeiro é predominantemente um POJO que segue rigorosas convenções para nomear métodos, e o último é um modelo de componente (EJB 3 reduz o grau de diferença entre eles).

O exemplo abaixo consegue ilustrar as três características mais importantes de objetos do tipo POJO, que são: rapidez e facilidade de desenvolvimento, além de fácil portabilidade.

Exemplo de um objeto POJO:

public class Pessoa
{
private String primeiroNome;
private String ultimoNome;
public Pessoa()
{
}
public String getPrimeiroNome()
{
return primeiroNome;
}
public void setPrimeiroNome(String primeiroNome)
{
this.primeiroNome = primeiroNome;
}
public String getUltimoNome()
{
return ultimoNome;
}
public void setUltimoNome(String ultimoNome)
{
this. ultimoNome = ultimoNome;
}
}
Ícone de esboço Este artigo sobre programação de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.