React.Js 시작하기
React 기초 개념
- Redux : 페이스북의 플룩스 데이터 아키테텍쳐 구현체 라이브러리 이며 어플리케이션의 상태를 관리한다
- Webpack : 모듈 번들러, 로더 및 플러그인을 통해 프로젝트 빌드를 도와 준다
- Express : node.js에서 웹서버를 쉽게 열게 해주는 프레임워크
- ES6 : 2015년에 업데이트 된 공식 자바스트립트 문법
- MongoDB : noSQL
- mongoose : MongoDB를 쉽게 사용해 줄 수 있게 하는 프레임 워크
JavaScript 어플리케이션을 어떻게 구조화
할까?
- 프레임워크가 아닌 라이브러리이다
framework는 필요한 기능이 이미 만들어져 있다.
틀이 있어서 틀안에 필요한 것들을 채워 넣는다.
틀을 벗어나기가 쉽지 않다.
한번에 한 framework를 사용하고 가끔씩 라이브러리를 같이 쓸 때 충돌이 날 수도 있다. 필요로 하지 않은 기능이 구현 되있을 수 있어서 무거울 수 있다.
라이브러리는 필요한 것을 가져다 쓴다. 다른 라이브러리와 충돌한 가능성이 없다.
react란 user interface를 만들기 위한 라이브러리이다.
react-native : 모바일 화면을 만들기 위한 것
react는 virtual DOM
(가상돔)을 사용한다
React 장점
- 배우기 간단하다
- 뛰어난 Garbage Colection
- 메모리 관리 성능
- 서버 & 클라이언트 렌더링 가능
- 서버 렌더링이 필요한 이유 : 초기 구동 딜레이 & SEO(검색엔진 최적화)
- 매우 간편한 UI 수정 및 재사용
- 페이스북 개발자들이 만들었고 계속해서 업데이트 되고 있다
- 다른 프레임 워크나 라이브러리와 혼용 가능
React 단점
- 보여지는 부분만 관여
- 데이터 모델링, 라우터 등의 기능이 없다
- 배우기 쉽지만 뷰 외에 기능들은 다른 기능들을 넣어야 해서 러닝 커브가 높을 수도 있다
- IE8 이하는 지원하지 않는다.