0428 Grid V3
V1(24.08): 주요기능
- 그룹 하이라이팅(계단식 구조)
- 셀 변경 추적
- UI만 담당, 데이터 전/후처리는 서버로
- '오더통합관리'에 한정된 기능('PO 추가' 비즈니스로직에 행 추가/삭제/업데이트가 종속됐음)
V2(24.11): 메이저 변경점
- 그룹 하이라이팅 제거: 리소스 대비 필수적인 기능인가에 대한 의심
- 셀 변경 추적 유지 + 성능 개선: originalMemoizer(Map)
- '오통관'에서 벗어나 일반화된 그리드 모듈로 재구성
- 행 추가/삭제/업데이트 일반화
V2.5(25.01): 사용성 개선에 초점
- 그리드 바깥에서 관리해야할 상태가 너무 복잡하고 많았음
- 필요 이상으로 창구가 열려있어 작업자별 퀄리티 편차 발생 + 컨텍스트 스위칭 비용 컸음 그리드 모듈 내에 레이어 추가
- useState들 + Grid → useGridContext + GridView
- 비즈니스적 요구사항 + 프론트 개발자를 위한 프레임워크 = useGridContext
- 순수 AG-Grid API 주입용 통로 = GridView
- 서버 데이터 + 전후처리 핸들링 = 구현부 상태
V3(25.05): 갈수록 useGridContext가 비대해지는 문제
- 분리한 의미가 퇴색될만큼 복잡해짐
- 복붙처럼 외부데이터가 중간에 껴야하는 경우 경계가 복잡해짐 다시 태초마을로 돌아가자
- Grid V3는 text input과 같은 역할로 축소
- 기존 서버/사용자 입력 데이터를 레이어로 구분했던 것을 이제 Grid 바깥에서 조각해 Grid에 굴려보내주기
- 다만 V2처럼 불필요한 자유도는 지양