Skip to content

86회차 회의록 #88

@uraflower

Description

@uraflower

날짜

2025.11.25

참석자

✅ 참석자: 미림, 보경, 영은,
❎ 미참석자: 정욱(이사)

스터디 주제

리액트 훅을 활용한 마이크로 상태 관리 8장

회의 내용

  • WeakMap 복습: 객체나 등록되지 않은 심볼만 키로 사용할 수 있는 Map으로, 객체가 WeakMap 또는 WeakSet에만 포함되어 있을 때에만 객체가 가비지 컬렉션 대상이 됨
  • 리액트 상태 관리 라이브러리 생태계에 대한 이야기
    • 사람들이 Zustand를 더 많이 쓰는 이유는 무엇일까? 마이그레이션 등 많은 이유가 있을 듯...
    • Recoil과 Redux가 Jotai, Zustand로 대체되는 점
    • Jotai가 Recoil에서 영감을 받아 제작되었다는 점
  • React Context 보일러플레이트가 많고 자주 사용하지 않아서 까먹게 되어서 어려움

질의응답

보경

  • Jotai 문법이 생각보다 쉬워서 호감이었다. Zustand보다 빨리 나왔다면 사람들이 Jotai를 쓰지 않았을까 라는 생각이 듦. 지난 시간(6장)에 "데이터/컴포넌트 중심 접근 방식" 얘기를 했는데 데이터 중심 접근 방식(ex. Redux, Zustand)이 더 먼저 나와서 사람들에게 익숙해져서 컴포넌트 중심 접근 방식(ex. Jotai)이 어렵게 느껴지는 거 아닐까 싶음
    • 미림: Zustand가 Jotai보다 먼저 나온 줄 몰랐다
  • 미림님 느낀 점처럼 잘 쓰면 정말 좋을 것 같다. 익숙해지는 데에도 시간이 오래 걸리지 않을 것 같다. 읽기만 해도 쉬운데 쓰면 얼마나 쉬울까! 다만 쓸 기회가 많이 없는 것 같아 아쉬움...
  • onMount로 내부 상태를 제어하기 용이할 것 같아 좋다
  • 아톰이 string으로 평가 가능하다는 점도 좋다
  • 저자가 한국인이 아니어서 그런지 표현이 어색한 부분이 몇 군데 있었다. 미림님이 파생 아톰에 대해 오해한 부분도 약간 오해할만하게 말한 부분이 좀 있는 듯 함
  • Jotai가 정말 편하지만 대규모 애플리케이션이나 상태로 관리할 게 많은 도메인에서는 어렵겠다고 생각했음

미림

  • 컨텍스트와 Jotai의 차이점 중 "동적 아톰 생성" 기능에 대한 설명이 이해가 잘 안 됨...
    • 보경: 아톰 객체와 값이 독립적이라는 점에서 출발해서 동적으로 아톰 생성이 가능하다는 개념이 가능해지는 것 같다
  • 파생 아톰 책에서 얘기하는 거 봤을 때 컴포넌트 맞춤형으로 만든다는 줄 알았는데 그게 아니었음
  • 아톰 모델이기 때문에 챙길 수 있는 이점이 많은 것 같다. 특히 todolist 예제에서 효율적으로 개선한 부분은 나도 고민해본 적 있었는데 Jotai로 해결할 수 있는 부분이었음!
  • 스토어를 왜 WeakMap 형태로 만들었을까?
    • 보경: 아톰이 객체라서 Map 형태인 듯
    • 미림: 아톰 객체를 key로 하고 컴포넌트가 언마운트될 때 아톰도 알아서 GC로 삭제되게 하려고 했던 거 아닐까?

영은

  • 초반 아톰 얘기는 쉬웠는데 후반 부가적인 기술 얘기가 어려웠다
    • 미림: 저도 어려웠음
    • 보경: 동감하지만 그럼에도 다른 상태 관리 라이브러리에 비해 시작이 매우 쉽기 때문에 쉽다고 느낌
  • 상태 관리 설계에 대한 고민 때문에 이 책을 골랐는데, 후반부 얘기는 이와 좀 거리가 있는 것 같아서 아쉽다

다음 스터디 주제

리액트 훅을 활용한 마이크로 상태 관리 9장

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions