React란, 사용자 인터페이스(UI)를 만들기 위한 오픈 소스 JavaScript 라이브러리이다. React의 특징은 아래와 같다.
- 선언형
- 컴포넌트 기반
- 가상 돔(Virtual DOM)
- UI 개발 특화
💁♂️가상 DOM이란?
▼ React를 이용한 DOM 업데이트 절차
1) 데이터가 업데이트 되면, 전체 UI를 Virtual DOM에 리렌더링
2) 이전 Virtual DOM에 있던 내용과 현재 내용을 비교 (즉, 가상 돔끼리 비교)
3) 바뀐 부분만 실제 DOM에 적용이 됨
▷ 컴포넌트가 업데이트 될 때, 레이아웃 계산이 한번만 이루어진다.
✅ React는 가상 DOM을 사용해서 얕은 비교와 일괄 돔 업데이트 방식을 이용해 성능을 향상시킨다.
React 개발환경 셋팅
1. VSC(Visual Studio Code) 설치하기
2. Node.js 설치하기
※ Node.js 설치할 때 참고했던 글 : [React] 리액트 시작하기, 코딩 공부 일지
💁♂️ Node.js를 설치하는 이유
✅ Node.js는 패키지 관리 도구(ex. npm) 사용과 모듈 번들러, 트랜스파일러 사용을 위해 설치한다.
React는 JavaScript 라이브러리이기 때문에 JavaScript에 대한 지식이 필요하다. React에서 제공하는 개념서와 실습서를 읽기 전에 JavaScript를 정리해둔 문서를 읽어보자.
✅ JavaScript 재입문
https://developer.mozilla.org/ko/docs/Web/JavaScript/A_re-introduction_to_JavaScript
✅ React 개념
https://ko.reactjs.org/docs/hello-world.html
✅ React 실습(자습서), 틱택토 게임
https://ko.reactjs.org/tutorial/tutorial.html
React를 시작하기 위해 설치를 완료하고서 여러 자료들을 읽어보았는데 막상 프로젝트를 시작하진 못했다. 직접 실습하면서 개념을 습득하는 것을 선호하기 때문에 적당한 토이 프로젝트를 찾다가 이 글을 발견했다.
React를 갓 시작하는 당신(초보 개발자)을 위해 추천하는 글들
글에서 소개하는 Movie app이 클론코딩을 하며 개념을 알아가기에 적합하다는 생각이 들어서 해당 글의 유튜브 영상을 시청하며 프로젝트를 만들었는데 이제 좀 정리가 되어가는 느낌이다. 약 5년전 글과 영상이므로 현재 업데이트 된 내용들은 따로 배워야겠지만 일단은 이론보단 실전이라는 생각으로 시작했다.
클론코딩을 하며 이론을 배워가고, 중요한 개념들을 습득했다. 다음 글에서는 강의를 들으며 정리를 한 내용을 기록할 것이다.
https://dev-cini.tistory.com/10
https://dev-cini.tistory.com/11