Olá. Não ficou muito claro para mim qual o objetivo/vantagens de criar essa classe DAO. Por que não, simplesmente, colocar tudo do DAO no Produto? Faz mais sentido para mim
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá. Não ficou muito claro para mim qual o objetivo/vantagens de criar essa classe DAO. Por que não, simplesmente, colocar tudo do DAO no Produto? Faz mais sentido para mim
Olá Sabrina, tudo bem com você?
Isso é mais uma questão de organização para facilitar futuras alterações. Isolar todo o código relacionado ao acesso e manipulação do banco de dados em classes DAO evita que esse código se misture com o código relacionado às regras de negócio.
Dessa forma, se um dia precisarmos alterar algo no código com as regras de negócio - o que com certeza vai acontecer, não teremos várias linhas de código relacionadas ao banco de dados misturadas com o código das regras de negócio, o que facilita bastante na leitura do código! O mesmo vale para quando precisarmos trocar o sistema de gerenciamento de banco de dados (SGBC) do MySQL para o Postgre, por exemplo. Tudo o que precisamos fazer é focar nas operações especificas do banco, sem medo de quebrar alguma parte da lógica do negócio na aplicação.
Faz sentido? Se ficou alguma dúvida é só avisar! ;)
Abraços e bons estudos!!