Meta가 개발한 오픈소스 JavaScript 라이브러리 대규모 웹 서비스의 UI를 더 편하게 개발하기 위해 만들어진 기술
🔲 사용하는 이유
컴포넌트(구성요소)를 기반으로 UI를 표현
Header.js Main.js Footer.js
화면 업데이트 구현이 쉽다 → 선언형 프로그래밍
→ 선언형 프로그래밍 : 과정은 생략하고 목적만 간결히 명시하는 방법 (React.js)
→ 명령형 프로그래밍 : 목적을 이루기 위한 모든 일련의 과정을 설형하는 방식 (JavaScript)
화면 업데이트가 빠르게 처리된다.
HTML → DOM → Render Tree → Layout (배치) → Painting (실제 화면)
CSS → CSSOM → Render Tree → Layout → Painting