정신없는 일주일이었다.

집안일 하랴, 스터디하랴, 회사일 하랴, 공부하랴 바빴다.

주말엔 컨퍼런스 다녀왔다.

 

정녕 이것이 개발자의 삶?!

 

수면을 4시간 이하로 유지했을 때 생긴 문제로 아직까지 고통받고 있기에 잠을 줄일 순 없다.

깨어 있는 시간을 최대한 활용해야 한다.

화이팅인 것이에요

 

 

공부하면서 어려웠던 부분은 State update 개념을 제대로 이해하는 것이었다.

그냥 useState를 사용해야만 상태가 바뀌었을 때 리렌더링 된다는 정도였다.

하지만 깊게 파고들다보니 가볍게 보면 안 될 것 같았다.

 

아래 내용은 이해를 위해 리렌더링을 이사에 비유하여 간단히 정리해보았다.

 

기존 상태가 다음 상태와 바라보는 주소값이 같을 경우 리렌더링을 하지 않고 건너뛰게 된다.

리렌더링(이사) 중

기존 집에서 가구 배치만 변경할 경우를 생각해보자.

내부의 가구 배치만이 달라졌을 뿐, 기본적인 구조는 유지된다.

메모리 주소가 변경되지 않았기에 집 자체에 대한 이사가 필요없다.

상태 객체/배열의 내용은 변경될 수 있지만, 참조(주소)가 같으면 React는 리렌더링하지 않는다.

 

새로운 집으로 가구를 옮겨야 할 경우에는 어떠한가?

가구배치 뿐만 아니라 옮길 집에 따라 가구 자체가 바뀔 수도 있다.

새 집으로 가야하니 이사를 해야 한다.

새로운 객체/배열(주소)로 상태가 변경되면 React는 컴포넌트를 리렌더링한다.

 

여기서 이사는 리렌더링이다.

React는 참조(주소값)의 변경을 기반으로 상태 변경을 판단하며, 이를 통해 불필요한 리렌더링을 최소화하여 성능을 최적화한다.

 

 

이 비유가 적절한진 모르겠으나 나는 이해하고자 노력했다.

 

스터디 시간이 언제 끝날지 모르니 강의 수강 시간이 붕뜰 때가 있다.

다음엔 시간분배에 신경을 써서 효율적인 학습시간을 가져야겠다.

 

 

+ Recent posts