Colecoes com classes

O que eu falei acima ainda é válido pro seu projeto na minha opinião, sobre usar métodos ao invés de classes.

Você poderia ao invés de ter as classes: Inserir, Alterar, Excluir, etc.

criar uma classe DAO, que possui os métodos: inserir(), alterar(), excluir(), etc.

[quote=digaoneves]O que eu falei acima ainda é válido pro seu projeto na minha opinião, sobre usar métodos ao invés de classes.

Você poderia ao invés de ter as classes: Inserir, Alterar, Excluir, etc.

criar uma classe DAO, que possui os métodos: inserir(), alterar(), excluir(), etc.[/quote]

mas essa classe não ira ficar extensa demais não cara?

[quote=digaoneves]O que eu falei acima ainda é válido pro seu projeto na minha opinião, sobre usar métodos ao invés de classes.

Você poderia ao invés de ter as classes: Inserir, Alterar, Excluir, etc.

criar uma classe DAO, que possui os métodos: inserir(), alterar(), excluir(), etc.[/quote]

Não percebi esse datalhe. Concordo plenamente. Se eu fosse criar para cada método no meu EJB uma classe, eu estava perdido.

[quote=macario1983][quote=digaoneves]O que eu falei acima ainda é válido pro seu projeto na minha opinião, sobre usar métodos ao invés de classes.

Você poderia ao invés de ter as classes: Inserir, Alterar, Excluir, etc.

criar uma classe DAO, que possui os métodos: inserir(), alterar(), excluir(), etc.[/quote]

mas essa classe não ira ficar extensa demais não cara?[/quote]

O que é uma classe extensa, para você ?

[quote=nel][quote=macario1983][quote=digaoneves]O que eu falei acima ainda é válido pro seu projeto na minha opinião, sobre usar métodos ao invés de classes.

Você poderia ao invés de ter as classes: Inserir, Alterar, Excluir, etc.

criar uma classe DAO, que possui os métodos: inserir(), alterar(), excluir(), etc.[/quote]

mas essa classe não ira ficar extensa demais não cara?[/quote]

O que é uma classe extensa, para você ?[/quote]

com mt codigo…

calma pessoal…sobre esse framework ejb e tudo mais…eu so tenho 3 meses que to nisso…

claro q se vc me disserem qq eu deva aplicar irei estudar…

para deixar o codigo mais dividido…

Eu concordo com você que a responsabilidade tem que ser dividida, e algumas classes são criadas para tal.

O padrão DAO, define uma Classe que será usada para controlar as operações de persistência, ou seja, o CRUD.

então tudo o que for relacionado à essas operações ficaria centralizado em uma única classe, com seus métodos, onde você envia uma Entidade, e o DAO se “preocupa” com como vai tratá-la para as operações, assim você deixa seu código com acoplamento mais baixo, uma classe não “depende” da outra para seu funcionamento.

Por que você não faz esse exercício? Crie um DAO e implemente os métodos nele, não se preocupe que a classe não vai ficar extensa, ela vai ter o tamanho que precisa ter.

Leia também sobre o padrão DAO e sobre o padrão MVC.

[quote=nel][quote=macario1983][quote=nel]Não tem como eu olhar todo o projeto e fazer críticas, até porque não tenho tempo hábil. Mas já vi algo “errado” ali . O método escrever arquivo pode gerar uma IOException e manter aberto a leitura de arquivo. Por isso, é de boa prática que use um bloco finally para validar algo assim. Exemplo:

InputStream is = null; try { is = new FileInputStream("teste.txt"); // faz qlqr coisa } catch (IOException ex) { //trata como quiser... } finally { if (null != is) is.close(); }

Veja se não há mais casos em seu projeto que necessitem deste tipo de tratamento.[/quote]

eu tratei as demais q o exercicio pedi mas essa eu n tratei pq imaginei q o eclipse poderia sugerir…irei fazer essa alteração cara…[/quote]

É que é um simples exercício, mas quando desenvolver sistemas reais, esse tipo de tratamento é essencial, por isso demonstrei á você. O Eclipse não sugere isso (ao menos nunca sugeriu pra mim), ele indica tratamento com os try-catch somente. Mas enfim, está dada a dica.[/quote]

fiz a correção conforme sugerida por vc, como diria meu professor, dando maior robustes ao programa…

vlw

Eu concordo com você que a responsabilidade tem que ser dividida, e algumas classes são criadas para tal.

O padrão DAO, define uma Classe que será usada para controlar as operações de persistência, ou seja, o CRUD.

então tudo o que for relacionado à essas operações ficaria centralizado em uma única classe, com seus métodos, onde você envia uma Entidade, e o DAO se “preocupa” com como vai tratá-la para as operações, assim você deixa seu código com acoplamento mais baixo, uma classe não “depende” da outra para seu funcionamento.

Por que você não faz esse exercício? Crie um DAO e implemente os métodos nele, não se preocupe que a classe não vai ficar extensa, ela vai ter o tamanho que precisa ter.

Leia também sobre o padrão DAO e sobre o padrão MVC.[/quote]

digaoneves eu ja senti assim olhando pro meu projeto algo estranho, muitas classes em um mesmo pacote é estranho sabe…mas como eu disse ainda to inicio, irei ler sobre DAO, MVC conforme sugerido…

cara vc falando assim da impressão que eu n fiz o exercício kkkk…

Pois é, tentei refatorar o primeiro trabalho deixando mais divido as coisas sabe…
Pra ficar mais organizado e melhor distribuído e deixando tb os métodos menores…

O professor pretendia nos ensinar o padrão DAO, mas a faculdade entrou de greve to tendo que contar com a ajuda da moçada para coisas q estou em duvida sabe…

Obrigado pela ajuda ai galera

Hehehe, eu quis dizer o exercício de transformar essas Classes que você criou em um DAO.

Hehehe, eu quis dizer o exercício de transformar essas Classes que você criou em um DAO.[/quote]

é como eu te disse em uns posts atras, eu preciso aprender a desenvolver projeto, e implementar ele…

algo alem do q estou vendo agora…

estou fazendo um trabalho para a matéria de seminários sobre SCRUM e tem um pouco sobre isso…

sobre desenvolvimento de projeto…

andei procurando no youtube algo sobre os 2 padrões e não tem problemas caso envolver BD né? o importante seria eu pegar a essência destes padrões né…

mas e quanto aos método vc acha q ficou legal?

macario1983 citei o EJB porque eu uso aqui, não estou dizendo pra tu estudar isso. Foi só um exemplo. De resto, o que dissemos foi para ajuda-lo a melhorar seu código, não era essa a ideia?

Os dois envolvem persistência em algum ponto… na camada de Modelo do MVC, e o DAO é completamente relacionado a persistência, seja em banco de dados ou em arquivo como você fez.

Em relação aos métodos, não acho bom você interagir com o usuário no método de persistência como fez, receba toda a informação do usuário antes, na View, e no método gravar(), você faz exatamente o que o método diz que faz, grava. E mais nada.

sem problemas…

[quote=digaoneves]Os dois envolvem persistência em algum ponto… na camada de Modelo do MVC, e o DAO é completamente relacionado a persistência, seja em banco de dados ou em arquivo como você fez.

Em relação aos métodos, não acho bom você interagir com o usuário no método de persistência como fez, receba toda a informação do usuário antes, na View, e no método gravar(), você faz exatamente o que o método diz que faz, grava. E mais nada.[/quote]

Cara não entendi direito oq vc quiz dizer com isso sabe…

Eu pego os dados na visão (view) e jogo no metodo gravar…qual seria uma forma correta entao…

No seu método gravar você imprime uma mensagem na tela perguntando se o usuário quer ou não reescrever o arquivo, você precisa tratar isso antes, e somente chamar o método de gravar, quando quiser gravar.

bom assim, este projeto se minhas aulas voltarem rápido oq acho difícil irei entregar desse jeito MAS, já estou estudando o DAO aqui…vendo uns videos, po cara fica mais separado ainda do q eu fiz sabe…

mt melhor…

irei refazer meu projeto…igual o cara fez no video…

fazendo uma diagramação as classes com os atributos e metodos…

se eu conseguir fazer igual a moçada vai ficar show de bola…(espero eu)