it-swarm-pt.tech

Salvando e restaurando a pilha de desfazer - boa ou ruim?

Em um aplicativo de desktop soberano com desfazer/refazer em vários níveis (por exemplo, Photoshop, Word etc.), seria capaz de salvar e restaurar o histórico de desfazer de um arquivo com o próprio arquivo, sendo uma coisa boa ou ruim? Minha reação inicial é "boa", no entanto, descobri que, ocasionalmente, pressione Control + Z até que ele pare de funcionar para reverter para uma versão anterior. Algum estudo ou experiência com isso?

12
Robert Fraser

Um exemplo dessa aplicação é IntelliJ IDEA (e alguns outros ambientes de programação). Além do externo --- específico do projeto habitual controle de revisão , IDEA possui um --- específico do usuário histórico local ) que salva uma revisão de cada arquivo em cada salvamento (o histórico é armazenado no diretório inicial do usuário). As revisões antigas são armazenadas por padrão por 3 dias úteis, após o qual as revisões antigas são removidas. Juntamente com o recurso de salvar automaticamente todos os arquivos a cada poucos segundos (meu a preferência é ficar inativa por 5 segundos), isso significa que você nunca precisará pensar em salvar arquivos e sempre poderá recuperar os dados antigos. É um verdadeiro salva-vidas na programação (às vezes eu também o uso para descobrir como trabalhei muitas horas em um projeto, para registrar minhas horas de trabalho, porque o histórico local mostra a data e a hora de cada alteração.)

Um controle de revisão externo ainda é necessário, mas para outras necessidades - você realizará alterações normalmente quando concluir um trabalho consistente, pelo menos uma vez a cada 1-2 horas, e também é uma maneira de distribuir suas alterações para outra equipe. membros e fazer backups. O histórico local, por outro lado, é para recuperar-se de percalços alguns segundos ou minutos após o ocorrido.

Eu acho que muitos outros programas se beneficiariam de uma história local semelhante. Adoraria se meu Office Suite o tivesse, porque uma pilha de desfazer/refazer e salvar manualmente os arquivos são formas muito primitivas de recuperar dados perdidos (eles não permitem recuperação seletiva e não sobrevivem ao reiniciar o programa). Também me lembro de ter visto um aplicativo de edição de imagens (não me lembro do nome - acho que era apenas para Mac), onde todas as edições foram feitas como transformações da imagem original e você pode, a qualquer momento, voltar para alterar qualquer um dos as edições anteriores. Portanto, essa história é possível mesmo com a edição de imagens.

Eu não acho que gostaria que o histórico fosse armazenado dentro do arquivo que está sendo editado - caso contrário, seria muito grande (uma revisão a cada dois segundos; meu histórico local para projetos de programação nos quais trabalhei em um ano é 370). MB) e pode causar um problema de segurança ao vazar dados que você pensou ter removido - mas um histórico por usuário seria ótimo.

7
Esko Luontola

de vez em quando eu gostaria que o photoshop ou o Word tivessem essa funcionalidade. Por outro lado, como você disse, muitas vezes pressiono control-z até que ele pare.

Outra questão é o desempenho. Pense em um rascunho de documento do Word sendo distribuído e editado por semanas. Seria enorme! e leva uma eternidade para carregar.

Outra questão é a privacidade. Não quero que as pessoas vejam quais etapas eu dei para pintar a imagem no Photoshop ou qual foi minha proposta anterior para o quadro.

Em conclusão, acho que pode ser legal, mas você teria que ter uma maneira de limpar o histórico por questão de desempenho e privacidade e também, talvez, se uma pessoa pressionar ctrl-z, você deve parar quando atingir o estado em que estava o documento. foi aberto pela última vez e pergunte se ele tem certeza de que deseja continuar.

7
Sruly

Parece-me que você não deseja desfazer/refazer, mas versionar arquivos ou controle de revisão . (Não conheço o Photoshop, mas o Word tem esse recurso, desativado por padrão).

7
peeles

Talvez um tempo limite para desfazer seja o padrão de 5 minutos (e pode ou não ser um período de tempo limite editável)? Ele abordaria as preocupações muito válidas que as pessoas têm aqui sobre o valor de desfazer dados dias/semanas/meses depois. E resolveria o problema levantado aqui: fechar um aplicativo acidentalmente e perder os dados de desfazer. E manteria o valor de pressionar Ctrl + Z para limpar todas as alterações durante a "sessão" (onde agora uma "sessão" significa qualquer uso que tenha inatividade por menos de 5 minutos por vez)

2
Chris Ledwith

Eu gosto muito disso, para projetos pequenos e grandes.

Google Chrome quando você restaura uma guia que você acidentalmente fechou) terá um histórico completo - o que é impressionante por si só.

Alguns aplicativos produtivos constroem seus artefatos a partir de uma pilha de ações, como modelagem 3D, em que você aplica operações em uma pilha sem fim e pode entrar e alterar operações anteriores e fazer com que essa mudança se propague pela pilha para o modificador atual. O formato do arquivo é baseado no fluxo de ações, não no resultado final.

Qualquer aplicativo em que não seja óbvio "publicar" uma versão final ou pública de um artefato, no entanto, incorreria em muitos riscos. Por exemplo, se você enviar um documento do Word com histórico completo de alterações que ofenderiam o destinatário (como uma oferta em que você alterou o nome do cliente de outro cliente ou outros enfeites).

1
Oskar Duveborn

Pessoalmente, acho ruim. Um sistema de controle de versão seria melhor para isso. Eu não acho que os usuários esperam que o desfazer funcione dessa maneira. Não vejo como eles se lembram do que está em sua pilha de desfazer há vários dias. E, potencialmente, isso pode consumir muito espaço em disco e memória no seu aplicativo. Quero dizer, os usuários nunca se livram dos dados. Como você lida com casos de uso em que os usuários desejam liberar espaço no disco rígido porque estão com pouca carga?

1
Erik Engheim

Meu sentimento é que esta é a ferramenta errada para o trabalho. Desfazer e Refazer trata das ações desse processo, para que eu possa desfazer/refazer uma ação antes de salvar e seguir em frente. Salvar em sessões me parece um requisito diferente, o controle de versão é mais o estilo. Eu posso ver que há um lugar para manter a pilha de refazer com uma versão salva de um arquivo/aplicativo, o que significa que você pode abrir uma versão e desfazer imediatamente as ações anteriores, mas quando você inicia mais ações, perde isso - a pilha é reiniciado.

Percebo que seria útil - posso ver algumas vezes que gostaria - mas ainda acho que não é o uso correto dessa instalação.

0
Schroedingers Cat