Esse tal de CRUD…


 

CRUD é uma sigla que ouvimos e falamos muito no mundo de desenvolvimento de sistemas, e mais ainda em sala de aula ;) mas afinal o que é esse negócio de CRUD ? Bom, para começar isso é uma sigla que significa Create Retrieve Update Delete, que em português significa Criar Recuperar Alterar e Excluir. Essas são as 4 operações básicas que realizamos em Sistemas de Informação e devem ser aplicadas, em geral, a todas as classes de Entidade do nosso sistema.

Isso é tão comum que existe até um padrão de caso de uso já para facilitar a nossa vida, mais do que isso podemos aplicar diretamente o padrão de projetos DAO para resolver os CRUDs mais simples do sistema.

Uma coisa interessante é perceber que o domínio da programação de CRUDs pode abrir totalmente a visão tanto do analista quanto do desenvolvedor para a implementação de outras partes do sistema. É uma ótima tarefa de treinamento para desenvolvedores e analistas júnior e para estagiários, é fato que CRUDs parecem até um castigo para desenvolvedores mais experientes :)

Mas afinal de contas como podemos imaginar os passos para fazer isso acontecer ? Costumo trabalhar isso da seguinte forma com os alunos:

  1. Implementar a classe de Entidade que será cadastrada
  2. Criar a tabela no banco de dados (se isso não for papel do DBA)
  3. Implementar o DAO correspondente
  4. Implementar a função de cadastro
  5. Implementar a função de recuperação (em geral isso é uma tela de listagem)
  6. Implementar a função de exclusão (essa é simples porque tendo a chave primária que recuperamos na etapa anterior basta usar o DAO)
  7. Implementar a função de alteração (essa é a mais enjoada porque temos que preencher a tela com os dados recuperados para poder mudar tudo)

Uma outra coisa interessante para trabalhar com CRUDs básicos é o seguinte, usar a listagem como função única de listagem, em casos de software web, podemos fazer uma grande tabela com os dados principais e duas colunas no final com links para excluir e alterar já configuradas com a chave primária do objeto. Isso pode ser implementando tanto em JSP/Servlet puro ou em JSF.

Algumas vezes um roteiro como esse parece bastante óbvio, porém para quem está começando isso não é muito claro !

Leave a Reply