← 카탈로그

Aggregate + Reverse Reference — 매니페스트 members + 읽기시점 역참조

architecturescaler

"사진은 서랍에 그대로 두고, 앨범은 사진 이름만 적어둔다" 는 방법이에요. 여러 서류(사진)를 하나의 거래(앨범)로 묶는데, 서류를 옮기지 않고 앨범이 이름표 목록만 가져요. 그리고 서류를 볼 때는 거꾸로 "너 어느 앨범에 적혀 있지?" 하고 찾아서 붙여줘요.

비유: 사진과 앨범 목록 📸

  • 사진(서류·문서) = 계약서·영수증·보고서 한 장 한 장. 서랍 속에 제자리 그대로 있어요.
  • 앨범(거래=Deal) = 사진을 묶는 큰 묶음. 그런데 앨범은 사진을 품고 있지 않아요. 대신 "내 사진: 3번, 7번, 9번" 이라고 이름표 목록만 적어둬요.
  • 이름표 목록(members) = 앨범이 가진 "내 것들" 리스트. 이게 진짜 주인이에요.

핵심 규칙: 묶는 쪽(앨범)이 목록을 쥔다. 사진은 자기가 어느 앨범 소속인지 몰라도 돼요.

왜 이렇게 해요? (사진을 마음대로 옮겨도 안 깨져요)

사진에 "너는 A앨범 거야" 라고 직접 적어두면, 사진을 다른 서랍으로 옮기거나 여러 앨범에 같이 넣고 싶을 때 곤란해져요. 그래서 사진은 건드리지 않고, 앨범 쪽 목록만 바꿔요. 그러면 —

  • 사진을 다른 곳으로 옮겨도 목록의 이름표는 그대로 → 안 깨져요.
  • 사진 하나를 여러 앨범 목록에 동시에 적을 수도 있어요.
  • 같은 이름을 두 번 적어도 한 번만 세요 (중복 정리).

볼 때는 거꾸로 연결해요 (역참조)

문제 하나. 사진만 딱 보면 "얘 어느 앨범 거지?" 를 몰라요. 사진엔 안 적혀 있으니까요. 그래서 화면에 보여줄 때 모든 앨범 목록을 쭉 훑어서, 거꾸로 짝을 지어줘요.

이 거꾸로 표는 저장하지 않아요. 화면을 볼 때마다 그때그때 새로 만들어요. 그래야 목록이 바뀌어도 항상 최신 이거든요.

앨범도 자기 상태가 따로 있어요

사진 한 장 한 장도 "작성중 / 서명완료" 같은 자기 상태가 있고, 앨범도 "진행중 / 정산완료" 같은 자기 상태가 따로 있어요. 앨범 상태는 보통 안에 든 사진들이 다 끝났나를 모아서 정해요 (다 끝나면 앨범도 "정산완료"). 둘은 서로 다른 신호등이에요.

핵심만 다시

  1. 앨범(거래)이 이름표 목록을 쥐고, 사진(서류)은 제자리에 그대로 둬요.
  2. 그래서 사진을 옮기거나 여러 앨범에 같이 넣어도 링크가 안 깨져요.
  3. 화면에 보여줄 땐 거꾸로 "이 사진 어느 앨범 거?" 를 그때그때 찾아줘요. 없으면 미분류.
  4. 사진과 앨범은 각자 자기 상태가 있고, 앨범 상태는 보통 사진들의 합이에요.

더 자세한 진짜 코드·설계는 옆의 개요 / Variants / Apply Recipe 탭에서 볼 수 있어요.