quinta-feira, 6 de março de 2008

PADRÃO CRIADOR - PARTE 2

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.
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!!!



Nenhum comentário: