<aside> 📌 요약: state를 사용하지 않으면 변수가 바뀌어도 컴포넌트가 재생성 되지 않고, 재생성 되지 않으니 재렌더링도 되지 않는다. useState 함수의 입력값은 기본값이다. state의 리턴값은 배열인데 첫 번째 인자는 읽을 때 쓰고, 두 번째 인자인 함수는 값을 바꿀 때 쓴다.
props는 사용자의 데이터(변경 불가)고, state는 생성자의 데이터(바뀌면서 재렌더링)다. props에 함수를 넣어서 보내줄수도 있다.
setState로 값을 변경할때 안에 콜백함수로 넣는 이유는 Btaching을 하기 위해서다. 즉, 바로 업데이트를 하는게 아니라 특정 시점에 몰아서 업데이트 하고 리렌더링을 함으로써 리액트 내부적으로 최적화 하기 위함이다.
Effect Hook은 서버통신할때 자주 사용한다고 한다.
</aside>