A JavaScript library for building user interface
사용자 인터페이스를 만들기 위한 자바스크립트 라이브러리
❗❗ 즉, 리액트는 사용자와 웹사이트의 상호작용을 돕는 인터페이스를 만들기 위한 자바스크립트 기능 모음집
* 라이브러리(Library)?
- 특정 프로그래밍 언어에서 자주 사용되는 기능들을 정리해 모아놓은 것
* 사용자 인터페이스(UI, User Interface)?
- 사용자와 컴퓨터 프로그램이 서로 상호작용을 하기 위해 중간에서 서로 간에 입출력을 제어해주는 것
ex) 웹사이트의 버튼, 텍스트 입력창 등
* JavaScript UI Library 종류
- 프레임워크 : AngualrJS, Vue.js, Next.js
- 라이브러리 : React
- 프레임워크(프레임워크) vs 라이브러리(개발자)
- 프로그램의 흐름에 대한 제어 권한의 차이
- 라이브러리는 흐름에 대한 제어를 하지 않고 필요한 부분만 가져다 사용
❗❗ SPA는 하나의 HTML 틀을 만들어 놓고 사용자가 특정 페이지를 요청할 때 그 안에 해당 페이지의 내용을 채워서 보내줌

👍 빠른 업데이트 & 렌더링 속도
👍 Component-Based
👍 재사용성 (Reusability)
👍 Meta라는 든든한 지원군
👍 React Native
👎 계속 업데이트 됨(새로운 학습 요구), 높은 상태관리 복잡도