React
- React 는 Meta(구 Facebook)에서 개발한 JavaScript 라이버리
- UI를 효율적으로 구축하기 위해 사용
- CSR에 최적화 되어 SPA(Single Page Application)를 개발하는 데 주로 사용
- 컴포넌트 기반 아키텍처와 Virtual DOM을 활용하여 선능 최적화
- 단방향 데이터 흐름이라 상태 관리가 용이
- JSX(JavaScript XML)라는 JavaScript를 확장한 문법 사용
Node.js의 특징
- 싱글 스레드의 이벤트 기반(Non-Blocking I/O) 기반으로 비동기 방식
- Chrome V8 엔진 기반으로 동작
- JavaScript로 풀스택 개발 가능
- 다양한 패키지 지원
NPM(Node Package Manager)
- JavaScript를 위한 패키지 관리자
- 공개된 JavaScript 라이브러리들을 쉽게 설치하여 사용 가능
- Node.js는 NPM을 기본으로 포함
React 장단점
- 장점
- Virtual DOM을 사용하여 성능 최적화
- 컴포넌트 재사용성이 높음
- 빠른 업데이트 및 유지보수 용이
- 커뮤니티와 생태계가 방대함
- 단점
- 초기 프로젝트 설정이 번거러울 수 있음
- JSX 문법을 습득해야 함
- 상태 관리가 복잡해질 수 있음
- React자체는 단순 UI 라이브러리이므로 여러 기능을 구현하려면 타 라이브러리도 필요