• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

lesiano

projecto ligação com bd

7 mensagens neste tópico

Boas; estou a fazer um projecto que vai buscar informação a uma base de dados (não local)

Eu estava a pensar fazer uma classe "BD" que fosse buscar para estruturas de dados a informação toda, mas será que é um conceito errado meter esses métodos nas próprias classes?

O projecto é um jogo de futebol tipo ELIFOOT. Estou a pensar na classe "campeonato" ter um metodo:

metodo{

*acede à bd;

*copia as equipas todas deste campeonato para um hash

*devolve o hash;

}

Alterei o método de pensamento porque não estou a conseguir fazer pelo primeiro. Reparem, um método que vai buscar as equipas todas na classe bd. Como depois fico com um hash na classe Campeonato com a mesma informação do hash da BD?

Thanks pela ajuda.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não precisas ter a base de dados toda a memória.

Se for uma base de dados tipo Football Manager, ocupa demasiada memória.

Carregas o essencial e que é acedido frequentemente, depois o resto vais buscando e fazendo cache como necessário.

Para não esgotar a memória vais limpando o cache q n é acedido com frequencia.

Quanto ao método p aceder á bd, podes fazer da seguinte maneira:

- Organizas o teu jogo por classes/módulos que identifiques que possam ser independentes e crias uma camada de acesso a dados para eles.

Isto tem a vantagem de poderes separar conceitos e poderes aceder á base de dados por threads diferentes optimizando os tempos de load do jogo.

Claro que falar é fácil e fazer é dificil, mas o meu conselho é começares por pensar na organização do teu jogo, modelo de dados e modelo de classes. Depois quando tiveres isso fica tudo mais claro.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

E respondendo à minha pergunta:

Achas que posso ter uma camada só para acesso à BD?

Se sim, como vou buscar os resultados dos métodos, para usar nas outras classes?

Danke.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim, podes e deves ter uma camada de dados para acesso à BD.

Para todas as classes terem acesso, podes criar uma camada de Entidades, que sejam referenciadas por todas as classes interessadas.

Uma Entidade é apenas um classe com campos privados e um método de get e set para cada campo.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estou verdíssimo em Java, como referencio as demais classes na classe Entidades?

Danke.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se tiverem no mesmo package não precisas fazer nada.

Se tiverem noutro package, q é o q deves fazer ( um package para cada camada), tens que adicionar a referencia, não me lembro ao certo do sitio, mas com o eclipse chegas lá num instante.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Uso BlueJ.

Mas estão no mesmo package sim.

Vou-me preocupar mais com o código, que é puxado, depois com isto.

Obgdão.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora