UI를 구축하는걸 도와주는 라이브러리로써 MVC모델에서 View를 구성해줌 SPA(Single Page Application)구성에 사용됨
사용자가 많고 개발자 커뮤니티가 커 시장이 넓어 양질의 자료를 얻거나, 에러 해결을 하기가 쉬움
프레임워크는 주방과 같이 툴과 재료가 모두 구비되어 있음 한정된 도구와 재료만 사용해야됨
라이브러리는 재료가 주어지지만 본인이 원하는 대로 사용 구현 커스터마이징이 가능
개발자가 직접 매번 찾아서 사용하지 않고 필요한 부분만을 교체하며 페이지를 갱신하기 위해 사용되는 것
리액트 환경을 알아서 구축해주는 툴 체인 (서버사이드 렌더링이 필요하다면 next.js 를 사용하여 구축)
리액트로 만들어진 앱을 이루는 최소한의 단위 재사용이 가능하게 UI를 작은단위로 나누어 사용
기존에는 더 기능이 다양했던 클래스 컴포넌트를 많이 사용했지만, 현재는 함수 컴포넌트가 리액트 훅을 사용하여 클래스 컴포넌트의 장점도 흡수하여 함수 컴포넌트 위주로 사용됨.
HTML과 자바스크립트의 문법을 섞어 HTML을 구현하게 만들어주는 문법
리액트에서 유동적인 데이터를 다루기 위해 존재하는 객체
사용이유 => State는 변경되면 자동으로 재렌더링 된다. (변수는 변경되어도 자동 재렌더링이 안됨)