Blog referente a aula 9 ministrada no dia 3/3/2008
By Marcos Vinicius
Padrão Criador – Parte 2
Vejamos a figura abaixo:

Como podemos ver logo acima ,trata-se de um diagrama de classes , onde lógicamente podemos contabilizar 4 classes, colocaremos em código todas as classes do diagrama caracterizando assim o seu criador.
Mas , por onde devemos começar ??
Fácil , aprendi uma importante dica , nós sempre começamos pela classe menos acoplada , ou seja aquela que é menos dependente.
Agora fica fácil determinar por onde começar , como podemos ver na figura acima das quatro classes a menos dependente é Produto , pois ela não depende de nenhuma outra classe , ao contrário de ItemVenda que depende de Produto , Venda que depende de ItemVenda e por ultimo a classe Main que pelo que eu entendi em aula depende de todas as outras 3 classes.
Bom , vamos começar então pela classe produto , que no nosso caso é a menos dependente.
Como ela ficaria em código ??
Confira abaixo:
CLASSE PRODUTO:
Public class Produto // declaração da classe Produto
{
// Quais seriam os atributos de produto ???
// Poderiam ser código do produto , descrição do produto e valor.
private integer idProduto;
private String descrição;
private Double valorUnitário;
// a seqüência abaixo seriam os nossos métodos assessores e multatórios GET e SET.
/*Antes de continuarmos preciso relembrar um pouco das funções de GET e SET, eles são usados para transformar atributos privados e atributos públicos , para que assim possam ser vistos por outras classes , mas principalmente são utilizados para dar controle a aplicação.*/
public string getDescrição(){
return descrição;
}
public void setDescrição (String valor){
descrição = valor;
}
CLASSE ITEMVENDA:
public class ItemVenda {
// Quais os atributos de ItemVenda ??
private Double qtde;
private Produto p;
// abaixo seguem os métodos assessores e mutatórios.
public void set p (produto p){
this.p = p; // lembre que o “p”em questão tem que ser o mesmo que esta no parâmetro.
}
public class Venda {
// Por se tartar de uma classe que executará vários itens , um array viria bem acalhar , mas o array apresenta problemas com relação a tamanho , portanto utilizaremos aqui uma coleção.
Private Set ItemVenda.list = new hashSet( );
// onde a coleção é caracterizada pelos sinais de maior e menor sobre a classe ItemVenda.
Agora fica a pergunta , de onde saiu esse hashSet???
Bom , desculpe a sinceridade , mas até a aula de ontem era novidade para mim , bom , como “Set” é uma classe e não pode ser instanciada , o hashSet é utilizado para que se possa instancia-la.
private Date dataVenda;
private Integer idVenda;
// agora depois de tudo o que foi feito é que eu poderei criar ItemVenda !!!!
public criarItemVenda (Produto p, Double qtde)
{
ItemVenda i = new ItemVenda( ); // o “i” no caso é uma variável de instancia atribuída
i.setP (p);
i.setQtde (qtde);
itemVendaList.add (i);
} // cria um item de venda e a adiciona a coleção.
By Marcos Vinicius
Padrão Criador – Parte 2
Vejamos a figura abaixo:
Como podemos ver logo acima ,trata-se de um diagrama de classes , onde lógicamente podemos contabilizar 4 classes, colocaremos em código todas as classes do diagrama caracterizando assim o seu criador.
Mas , por onde devemos começar ??
Fácil , aprendi uma importante dica , nós sempre começamos pela classe menos acoplada , ou seja aquela que é menos dependente.
Agora fica fácil determinar por onde começar , como podemos ver na figura acima das quatro classes a menos dependente é Produto , pois ela não depende de nenhuma outra classe , ao contrário de ItemVenda que depende de Produto , Venda que depende de ItemVenda e por ultimo a classe Main que pelo que eu entendi em aula depende de todas as outras 3 classes.
Bom , vamos começar então pela classe produto , que no nosso caso é a menos dependente.
Como ela ficaria em código ??
Confira abaixo:
CLASSE PRODUTO:
Public class Produto // declaração da classe Produto
{
// Quais seriam os atributos de produto ???
// Poderiam ser código do produto , descrição do produto e valor.
private integer idProduto;
private String descrição;
private Double valorUnitário;
// a seqüência abaixo seriam os nossos métodos assessores e multatórios GET e SET.
/*Antes de continuarmos preciso relembrar um pouco das funções de GET e SET, eles são usados para transformar atributos privados e atributos públicos , para que assim possam ser vistos por outras classes , mas principalmente são utilizados para dar controle a aplicação.*/
public string getDescrição(){
return descrição;
}
public void setDescrição (String valor){
descrição = valor;
}
CLASSE ITEMVENDA:
public class ItemVenda {
// Quais os atributos de ItemVenda ??
private Double qtde;
private Produto p;
// abaixo seguem os métodos assessores e mutatórios.
public void set p (produto p){
this.p = p; // lembre que o “p”em questão tem que ser o mesmo que esta no parâmetro.
}
public class Venda {
// Por se tartar de uma classe que executará vários itens , um array viria bem acalhar , mas o array apresenta problemas com relação a tamanho , portanto utilizaremos aqui uma coleção.
Private Set
// onde a coleção é caracterizada pelos sinais de maior e menor sobre a classe ItemVenda.
Agora fica a pergunta , de onde saiu esse hashSet???
Bom , desculpe a sinceridade , mas até a aula de ontem era novidade para mim , bom , como “Set” é uma classe e não pode ser instanciada , o hashSet é utilizado para que se possa instancia-la.
private Date dataVenda;
private Integer idVenda;
// agora depois de tudo o que foi feito é que eu poderei criar ItemVenda !!!!
public criarItemVenda (Produto p, Double qtde)
{
ItemVenda i = new ItemVenda( ); // o “i” no caso é uma variável de instancia atribuída
i.setP (p);
i.setQtde (qtde);
itemVendaList.add (i);
} // cria um item de venda e a adiciona a coleção.
Continuando a aula do dia 03/03/2008 , como de costume fomos ao laboratório para as aulas práticas onde mais uma vez me impressionei com o poder da ferramenta NETBEANS.
O seu poder compilação é fantástico , temos até a possibilidade de reforçar a nossa lógica , onde através do processo “DEBUG FILE” podemos percorrer a aplicação podendo assim conhecer o passo a passo de toda a execução, é até uma forma de atualização e melhoria de nossos conhecimentos em lógica, não espero a hora de terminar de baixa-la para assim descobrir mais de seus segredos.
Bom , por hoje é só pepepessoal !!! hehehe
Espero que tenham gostado dessa postagem , estava bem mais inspirado hoje !!!
Boa semana a todos !!!!!
Até o próximo blog!!!
O seu poder compilação é fantástico , temos até a possibilidade de reforçar a nossa lógica , onde através do processo “DEBUG FILE” podemos percorrer a aplicação podendo assim conhecer o passo a passo de toda a execução, é até uma forma de atualização e melhoria de nossos conhecimentos em lógica, não espero a hora de terminar de baixa-la para assim descobrir mais de seus segredos.
Bom , por hoje é só pepepessoal !!! hehehe
Espero que tenham gostado dessa postagem , estava bem mais inspirado hoje !!!
Boa semana a todos !!!!!
Até o próximo blog!!!
Nenhum comentário:
Postar um comentário