40일차 (CS2)
Redux 말고 다른 전역 상태관리 아는 것 하나와 차이점
Recoil은 Redux와 마찬가지로 React에서 사용하는 전역 상태 관리 도구로 간결한 API와 구독 기반 시스템을 갖는 라이브러리이다. Recoil은 상태단위를 나타내는 atoms와 파생된 상태나 상태 변환을 나타내는 selectors라는 두 가지 주요 개념을 중심으로 설계되었다. Recoil은 구독 기반 시스템을 사용하기 때문에 필요한 컴포넌트만 리렌더링 되며, 이로 인해 특정 상태의 변경이 다른 컴포넌트에 미치는 영향을 최소화할 수 있다.
차이점으로는 Redux는 단방향 데이터 흐름과 중앙 집중식 스토어를 통해 상태를 관리하고, Recoil은 아톰과 셀렉터를 활용한 구독 기반 시스템으로 React 컴포넌트 간의 상태를 관리한다는 점이 있다.
버츄얼 돔과 리얼 돔의 차이
버츄얼 돔은 메모리 상의 돔 표현으로 실제 돔의 변경을 최소화하기 위해 사용되고, 리얼 돔은 브라우저에서 웹 페이지의 구조를 직접 나타내고 조작한다는 차이점이 있다.
useRef란
React에서 DOM 요소에 직접 접근할 때 사용하거나, 변수의 값을 렌더링 사이에서 유지하고 싶을 때나, 이전 렌더링에서의 상태나 속성 값을 저장하고 참조하는 데 사용되는 Hook이다.
useEffect의 실행 순서
컴포넌트가 처음 렌더링 된 후 useEffect 내의 함수는 초기 렌더링을 완료한 직후에 실행된다. 이후 의존성 배열 내의 값이 변경될 때마다 useEffect가 실행되며, 의존성 배열이 제공되지 않으면 컴포넌트가 리렌더링 될 때마다 실행된다.