Command Pattern1 커맨드패턴으로 만들어보는 undo/redo 들어가며.figma나 canva 같은 화이트보드형 서비스에서 필수적인 undo, redo 기능이 있습니다. 언뜻 생각하면 간단할 것 같지만, 막상 구현하려고 하면 생각보다 복잡한 상황을 마주하게 됩니다. 저 역시 eapy:canvas에서 undo, redo를 구현하면서 복잡해지는 코드로 인해 골치가 아팠던 경험이 있습니다. undo/redo 기능을 구현하는 방식은 요구사항과 제약 조건 등 프로젝트가 처한 상황에 따라 다를 것입니다. 안타깝게도 (대부분의 경우가 이렇겠지만), 저에겐 구현 시간이 많이 주어지지 않은 것이 큰 제약 조건이었습니다. 최초 mvp 배포가 얼마 남지 않은 상황에서, 핵심 기능 개발에 열중해야 했기에 처음에는 간단하게 일종의 메멘토 패턴과 유사한 상태 스냅샷 저장 방식으로 구현하였습.. 2025. 8. 26. 이전 1 다음