Plain Old Java Objects: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Ajustes
Linha 1:
'''Plain Old Java Objects''', ou '''POJO'''s, são [[objeto]]s [[Java (linguagem de programação)|Java]] que seguem um ''design''desenho simplificado em contraposição aos [[EJB]]s, por exemplo. Um [[JavaBean]] é um POJO que segue definições rígidas de estrutura ([[construtor]] ''default'' sem argumentos e [[método]]s que seguem o padrão de ''getters'' e ''setters'' para seus [[atributo (programação)|atributos]]). Os POJOs não possuem nenhum conhecimento de código de infra-estrutura.
 
POJO,Este um acrônimo para Plain Old Java Objects,padrão é suportadobaseado pelos advogados dana 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''[[framework]]s'' de objetos. É mais atrativo do que o termo beans''bean'' do Java devido aoà conflitoconfusão existentegerada entrepela semelhança dos termos [[JavaBeans]] e os EJB (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).
 
==Exemplo==
Um POJO é um objeto java normal que não implementa nenhuma [[interface]] e nem estende nenhuma classe específica de um [[framework]]. Podem ser usados fora de um [[container]] e são fáceis e simples de serem feitos, não precisam conhecer sobre regras de negocio ou arquitetura da aplicação.
Este exemplo mostra uma classe POJO que segue o padrão JavaBean.
Normalmente contém métodos get/set e um único construtor sem argumentos.
public class Carro<br> {
 
POJOs agem como transmissores de dados, porém sem se importar com o seu conteúdo em si, eles apenas recebem as entradas através de métodos get/set e as passam para serem interpretadas e utilizadas, dessa maneira garantem a velocidade e a simplicidade. As grandes vantagens dos POJOs são: '''Independência em relação ao container''', '''Rapidez''', '''Facilidade de desenvolver''', '''Portabilidade'''.
private String cor, nome;<br>
 
'''Exemplo:'''<br>
private String cor;
public class Carro<br>
{<br>
public Carro( ) {}<br>
private String cor, nome;<br>
}
public Carro( ){}<br>
public void setNome(String nome)<br>
public Carro(String nome, String cor) {
{ this.nome = nome}<br>;
public String getNome( )<br>
{ this.cor = cor}<br>;
{return nome;} <br>
}
public void setCor(String cor)<br>
{this.cor=cor}<br>
public String getCor( ) {
return cor;}<br>
}
}<br>
*Note que os atributos são privados, porem pode ser usado por qualquer um através dos gets/sets.
public void setCor(String cor)<br> {
 
this.cor = cor;
Existe uma relação entre POJOs e JavaBean, porem não são exatamente a mesma coisa.<br>
}
[[JavaBean]] são classes com os métodos get/set e construtor vazio.
JavaBeans podem ser POJOs, POJOs podem ser JavaBeans, mas não necessariamente. Podemos ter um JavaBean que estende algo de framework ou um POJO que não usa get/set.
public String getNome( )<br> {
 
{ return nome;} <br>
{{esboço-prog}}
}
public void setNome(String nome)<br> {
this.nome = nome;
}
}
 
[[Categoria:Java]]