지난 2편에서 State와 Props의 차이를 알아보며 아주 중요한 떡밥(?)을 하나 남겼었죠.State를 변경할 때 isLiked = true처럼 직접 값을 바꾸지 않고, 굳이 setIsLiked(true)라는 전용 함수를 써야 한다고 말씀드렸습니다. 저도 리액트를 처음 배울 때 이 부분이 참 답답했어요.배열에 데이터를 추가할 때 그냥 익숙한 push()를 쓰면 되는데, 왜 자꾸 복잡하게 전개 연산자(...)를 쓰라고 하는 걸까요?오늘은 리액트 초보자들이 가장 많이 겪는 "코드는 바꿨는데 왜 화면이 안 변하지?"라는 버그의 원인, 불변성(Immutability)과 이를 쉽게 해결해 주는 실무 라이브러리까지 명쾌하게 파헤쳐 보겠습니다.1. 나의 첫 사이드 프로젝트 삽질기: "왜 화면이 안 바뀌지?"제가 ..