프로그래밍 기술/Escort GoF의 디자인 패턴 C#

[소프트웨어 패턴 C#] 20. 메멘토 패턴 (Memento Pattern)

언제나휴일 2016. 4. 17. 13:28
반응형

20. 메멘토 패턴(Memento Pattern)


 

 메멘토 패턴은 개체의 상태를 기록해 놓았다가 원래 상태로 복원을 할 필요가 있을 때 기록해 놓은 것을 사용하는 패턴입니다. 메멘토 패턴은 실행 취소 기능을 지원하고자 할 때 많이 사용됩니다.

 

 간단한 예를 들어볼께요. 어떠한 응용에서 특정 기능을 수행할 것을 요청하기 전에 원본 개체에게 메멘토 개체를 요청합니다. 원본 개체는 자신의 상태 정보에 대한 스냅샷인 메멘토 개체를 생성하여 반환합니다. 그리고, 특정 기능을 수행하다가 수행 이전 상태로 복원이 필요하게 되면 반환 받았던 메멘토 개체를 원본 개체에게 전달하여 복원할 것을 요청합니다. 원본 개체는 전달받은 메멘토 개체에 보관해 두었던 이전 상태 값을 얻어와서 자신의 상태를 복원을 하는 것입니다.

 


메멘토 패턴 (Memento Pattern)



Memento.zip



2016/04/28 - [프로그래밍 기술/Escort GoF의 디자인 패턴 C#] - [C#] 메멘토 패턴(Memento Pattern) - 개요, 시나리오


2016/04/28 - [프로그래밍 기술/Escort GoF의 디자인 패턴 C#] - [C#] 메멘토 패턴(Memento Pattern) - 설계(Design)


2016/04/28 - [프로그래밍 기술/Escort GoF의 디자인 패턴 C#] - [C#] 메멘토 패턴(Memento Pattern) - 구현


반응형