- 더블 버퍼링 방식으로 React 컴포넌트의
state
나props
가 변경되면 내부의 Vitual DOM에 먼저 그린 뒤 Reconciliation(diffing) 알고리즘을 이용해 O(n)의 시간복잡도로 변경된 DOM을 확인하고 해당 DOM만 다시 그리기 때문에 효율적 입니다.
- How(어떻게)가 아니라 What(무엇)을 정의하기 때문에 컴포넌트가 props로 무엇이 필요한지 손 쉽게 확인할 수 있습니다.
- 특정한 역할을 하는 ui를 컴포넌트로 분리해서 독립적이고 재활용 가능하면서 격리된 조각으로 만들 수 있습니다.
html
,css(CSS-IN-jS 라이브러리를 사용했을 경우에)
,js
파일로 분리되어 있던 코드들을 컴포넌트 단위의 한 파일로 합칠 수 있습니다.