Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

Knitter

Como implementar um sistema de undo/redo numa aplicação com base de dados?

Mensagens Recomendadas

Knitter    101
Knitter

Boas,

Embora o problema não esteja necessáriamente relacionado com base de dados, foi devido à existência dela que tenho problemas.

Tenho uma aplicação que usa uma base de dados, é uma aplicação típica, uma base de dados de receitas. A questão é como implementar o sistema de undo/redo correctamente?

Não posso confiar no motor de base de dados para fazer isso, não será correcto. Mas tenho alguma relutância em criar cópias locais dos dados na aplicação.

A questão é mais de performance que de outra coisa, afinal não quero que cada vez que o utilizador carregue no botão para anular seja feita uma ligação à base de dados. Pior é o utilizador que faz undo e redo seguido... não quero o motor de base de dados a trabalhar por tudo e por nada. Por outro lado, ao guardar cópias locais como posso garantir integridade?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
M6    75
M6

Cada operação/comando que o utilizador faz gera dois comandos: o da operação do utilizador e o da acção inversa. Depois basta teres uma lista para os comandos undo, redo e usar os comandos certos para fazeres e desfazeres as operações. :thumbsup:

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


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade