React 소개
2025. 4. 1. 00:38ㆍFrameworks/React
React 소개와 기본 개념
React란?
React는 Facebook(현 Meta)에서 개발한 JavaScript 라이브러리로, 사용자 인터페이스를 구축하기 위한 효율적이고 유연한 도구입니다. 웹 애플리케이션의 프론트엔드 개발에 널리 사용되며, 모바일 애플리케이션(React Native)에도 확장되어 사용됩니다.
React의 핵심 특징
- 컴포넌트 기반 아키텍처
- UI를 독립적이고 재사용 가능한 조각(컴포넌트)으로 나누어 개발
- 각 컴포넌트는 자체 상태와 로직을 가질 수 있음
- 복잡한 UI를 관리하기 쉬운 작은 부분으로 분리
- 가상 DOM(Virtual DOM)
- 실제 DOM 조작의 비효율성을 해결하기 위한 개념
- 변경사항을 실제 DOM에 직접 적용하지 않고, 메모리에 있는 가상 DOM에 먼저 적용한 후 최적화된 방식으로 실제 DOM에 반영
- 성능 향상과 렌더링 최적화에 기여
- 선언적 프로그래밍
- "어떻게(How)" 보다는 "무엇을(What)" 정의하는 방식으로 UI 작성
- 상태가 변경되면 React가 자동으로 UI를 업데이트
- 코드의 가독성과 예측 가능성 향상
- 단방향 데이터 흐름
- 데이터는 부모 컴포넌트에서 자식 컴포넌트로 흐름 (props)
- 명확한 데이터 흐름으로 디버깅과 이해가 용이
- 애플리케이션의 상태 관리 단순화
React 시작하기
개발 환경 설정
- Node.js 설치
- React 개발을 위해 Node.js와 npm(Node Package Manager)이 필요합니다.
- Node.js 공식 사이트에서 다운로드 및 설치
- 설치 후 터미널에서 node -v와 npm -v로 설치 확인
- Create React App 사용
- create-react-app은 React 애플리케이션을 쉽게 시작할 수 있는 공식 도구입니다.
- 개발 서버, 빌드 프로세스, 테스트 환경 등이 모두 설정됩니다.
- 브라우저에서 http://localhost:3000으로 접속하여 앱 실행 확인
- npx create-react-app my-app cd my-app npm start
React의 기본 구조
새 React 프로젝트의 기본 구조는 다음과 같습니다:
my-app/
├── node_modules/ # 프로젝트 의존성 패키지들
├── public/ # 정적 파일들
│ ├── index.html # 기본 HTML 템플릿
│ └── ...
├── src/ # 소스 코드
│ ├── App.js # 메인 컴포넌트
│ ├── index.js # JavaScript 진입점
│ └── ...
├── package.json # 프로젝트 설정 및 의존성
└── ...
- public/index.html: 웹 페이지의 기본 HTML 템플릿
- src/index.js: JavaScript 진입점, React 앱을 DOM에 렌더링
- src/App.js: 메인 React 컴포넌트
- package.json: 프로젝트 의존성 및 스크립트 정의
'Frameworks > React' 카테고리의 다른 글
| React Router의 주요 기능 상세 설명 (0) | 2025.04.01 |
|---|---|
| React Router (0) | 2025.04.01 |
| 간단한 React 애플리케이션 예제 (0) | 2025.04.01 |
| React Hooks (0) | 2025.04.01 |
| React 기본 개념 (0) | 2025.04.01 |