lou@blog $ _

  • 홈
  • 태그

프로그래밍/Design Pattern 1

메멘토 패턴 (Memento Pattern): Rust로 구현

메멘토는 세부 구현을 드러내지 않으면서 객체의 이전 상태를 복원하고, 저장할 수 있게 해주는 디자인 패턴이다. 문제 간단한 텍스트 편집기를 개발한다고 가정해보자. 상태 스냅샷을 만드는것을 간단히 생각해보면, 저장소에 모든 필드들을 저장소에 저장하는 것을 생각할 수 있다. 하지만 아래와 같은 문제들이 있을 수 있다. 캡슐화로 인해 모든 필드들에 접근할 수 없을지도 모른다. 나중에 텍스트 편집기 클래스를 리팩토링하거나 일부 필드를 추가/제거 한다고 했을때 상태 복사를 담당하는 클래스도 같이 변경해야하는 번거로움이 생긴다. 상태를 저장 및 복원하기 위해 스냅샷도 필드들을 모두 열어놓아야(public)한다. 솔루션 메멘토 패턴은 앞에서 생각했던 것 처럼 다른 객체가 외부에서 에디터의 상태를 복사하려고 시도하는 ..

프로그래밍/Design Pattern 2023.07.30
1
더보기
프로필사진

지식은 점에서 선으로

  • 분류 전체보기 (443) N
    • 프로그래밍 (325) N
      • General (60) N
      • Linux (16)
      • Android (125)
      • Java (6)
      • Algorithm (10)
      • C | C++ (2)
      • iOS (1)
      • Kotlin (11)
      • Network (10)
      • 마인크래프트 서버, 플러그인 (7)
      • Python (11)
      • SQL (6)
      • NoSQL (2)
      • Unity (8)
      • JS, Node.js (25)
      • 수학 (8)
      • C# (2)
      • Blockchain (3)
      • Docker (4)
      • 회고 (4)
      • Rust (3)
      • Design Pattern (1)
    • 게임 (34)
      • 마인크래프트 (20)
      • 마인크래프트 앱 개발일기 (10)
      • 일반 게임 (4)
    • 나 (73) N
      • 이슈 (31) N
      • 리뷰 (17)
      • 독후감 (7)
      • 루슐랭 맛집 (14)
      • 생각 주머니 (4)
    • 기타 (8)
      • 개인정보처리방침 (8)

Tag

Python, minecraft, Windows, 강의, Java, 프로그래밍, 안드로이드, 코딩, 만들기, JavaScript, 앱, 서버, Linux, kotlin, 마크, 어플, Android, Server, 개발, 마인크래프트,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2023/09   »
일 월 화 수 목 금 토
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바