eatthefrog
eater_forg
« 2026/02 »
| 일 |
월 |
화 |
수 |
목 |
금 |
토 |
| 1 |
2 |
3 |
4 |
5 |
6 |
7 |
| 8 |
9 |
10 |
11 |
12 |
13 |
14 |
| 15 |
16 |
17 |
18 |
19 |
20 |
21 |
| 22 |
23 |
24 |
25 |
26 |
27 |
28 |
관리 메뉴
eatthefrog
리엑트 코어 정보 본문
카테고리 없음
리엑트 코어 정보
eater_forg
2025. 1. 10. 18:13
1. React 핵심 개념
- JSX: HTML과 유사한 문법을 JavaScript 내에서 작성할 수 있게 하는 React의 핵심 문법.
- 컴포넌트(Component): 재사용 가능한 UI 구성 요소. 함수형 컴포넌트와 클래스형 컴포넌트의 차이 이해.
- Props와 State:
- Props: 부모에서 자식으로 데이터를 전달하는 읽기 전용 객체.
- State: 컴포넌트 내부에서 관리되는 동적인 데이터.
- Lifecycle Methods: 클래스 컴포넌트에서 사용되는 생명주기 메서드 (e.g., componentDidMount, componentDidUpdate).
- Hooks:
- 필수적인 Hook: useState, useEffect
- 추가적인 Hook: useContext, useReducer, useMemo, useCallback, useRef
- Virtual DOM: Virtual DOM이 실제 DOM보다 빠른 이유와 React가 이를 사용하는 방식.
2. React와 State 관리
- State Management:
- React 자체의 useState, useReducer로 관리.
- 전역 상태 관리 도구: Redux, MobX, Zustand, Recoil.
- Context API: 간단한 전역 상태 관리.
3. React Router
- SPA(Single Page Application)에서 라우팅 처리.
- React Router:
- 주요 컴포넌트: <BrowserRouter>, <Route>, <Link>, <Navigate>.
- 동적 라우팅, URL 파라미터 처리, 리다이렉트.
4. API 통신 및 데이터 처리
- REST API: fetch 또는 axios를 사용해 백엔드와 통신.
- GraphQL: 데이터를 클라이언트가 원하는 형태로 쿼리.
- 상태 관리와 결합하여 데이터 패칭 효율화.
- React Query: 비동기 데이터 관리 라이브러리.
5. 스타일링
- CSS-in-JS: Styled-components, Emotion.
- CSS Modules: 클래스 이름 충돌을 방지.
- Tailwind CSS, Bootstrap 같은 CSS 프레임워크.
6. React 성능 최적화
- React.memo: 컴포넌트 리렌더링 방지.
- useMemo, useCallback: 불필요한 연산과 렌더링 최소화.
- Lazy Loading: React.lazy와 Suspense로 컴포넌트 지연 로드.
- Code Splitting: Webpack과 함께 사용해 번들 크기 감소.
7. 테스트
- 유닛 테스트: Jest, React Testing Library.
- E2E 테스트: Cypress, Playwright.
8. React Native (모바일 앱 개발 시 필수)
- React와 동일한 개념을 기반으로 하며, 모바일 환경에 맞춘 추가적인 학습 필요.
- 네이티브 모듈 연결, 성능 최적화 등.
8. 타입스크립트와 React
- 타입 안전성: 컴포넌트의 props, state를 정의.
- interface와 type을 사용한 구조적 설계.
9. 프로젝트 구축과 배포
- 프로젝트 초기화: create-react-app 또는 Vite.
- 빌드 도구: Webpack, Babel.
- CI/CD와 배포: GitHub Actions, Vercel, Netlify.