C++에서 벡터 그리기를 수행하고 sqlite를 사용하여 실행 취소/다시 실행 기능을 백업하는 데스크톱 응용 프로그램을 작성하고 있습니다.실행 취소/다시 실행 기능을 위해 sqlite를 활용하는 방법은 무엇입니까?
누구나 실행 취소/다시 실행 기능을 위해 sqlite를 사용 했습니까? 그것은 당신을 위해 어떻게 운동합니까?
명확한 설명 : 나는 스택 방식의 알고 있었다
, 나는 심지어 접근 한 응용 프로그램을 구현했습니다. 내가 만난 문제는 잠시 후에 유지하기가 어려워 졌다는 것입니다.
내가 sqlite를 사용하여 의미했던 것은 내 전체 메모리 내 데이터 구조를 sqlite 데이터베이스에 매핑하고 sqlite가 diff 및 수정본을 처리하도록합니다. 메모리 내 데이터베이스를 만들면 속도가 문제되지 않아야합니다.
그것은 아이디어 였고 나는 그것이 효과가 있는지 궁금해하고있었습니다.
과장된 것처럼 보입니다. 정상적인 경계 스택/명령 패턴 접근 방식의 문제점은 무엇입니까? –
http://c2.com/cgi/wiki?AbstractionInversion –
나는 Pete와 동의한다. 스택 기반 접근 방식으로 시작하십시오. 그게 아니라면, 각 명령에 DB에 직렬화/역 직렬화 할 수있는 기능을 부여하십시오. 그러나 정말로, 당신이 정말로 이상한 것을하지 않는다면, 스택 기반 접근법은 그것을자를 것입니다. –