**Initializing**
setup props and state
**Mounting
componentWillMount** : render 가 되기 직전
->
**render** : 최초로 브라우저에 그려진다.
->
**componentDidMount** : render 된 직후
**Updation**
props 가 update 되거나 state 가 update 된다. update 되면 ReRender 한다.
===================================================================================
**Props
componentWillReceiveProps** : props와 states 의 차이점. props를 새로 지정했을 때 바로 호출!
state 의 변경에는 반응하지 않는다. 다만 props의 값에 따라 state를 변경해야 한다면??
setState를 이용해 state 를 변경한다. props의 변경과, state의 변경을 한번에 처리해서
shouldComponentUpdate 로 보낸다.
->
**shouldComponentUpdate** : true or false 를 return 한다. 그려낼지 말지 결정한다.
불필요하게 rendering 되는 것을 방지한다. React Component 의 성능최적화에 중요한 역할을 한다.
props, state, 혹은 둘 다 변경되도 호출된다. newProps와 newState 를 인자로 가진다.
return type 이 boolean 으로써 true면 render, false 면 render하지 않는다. default 는 true.
->
**componentWillUpdate** : 컴포넌트가 reRender 되기 직전에 불린다. setState 쓰면 안됨.
->
**render**
->
**componentDidUpdate** : 컴포넌트가 reRender 를 마치면 불린다.
===================================================================================
**States
shouldComponentUpdate** : true or false 를 return 한다. 그려낼지 말지 결정한다.
불필요하게 rendering 되는 것을 방지한다. React Component 의 성능최적화에 중요한 역할을 한다.
->
**componentWillUpdate**
->
**render**
->
**componentDidUpdate**
**Unmounting
componentWillUnmount** : 사라지기 직전. 메모리 중에 정리할것을 정리.
컴포넌트에서 API 요청을 했지만 아직 받지 못했다면, 그 요청을 취소한다.
componentWillMount , render, componentDidMount
componentWillReceiveProps, shouldComponentUpdate, componentWillUpdate, render, componentDidUpdate