React를 배워야하는 이유 (feat. Library & Framework)

devCecy·2020년 12월 9일
0

React

목록 보기
7/14
post-thumbnail

React?

사용자 인터페이스(UI)를 만들기 위한 자바스크립트 라이브러리이다.

React는 재사용이 가능한 컴포넌트들을 요리조리 조합하여 우리가 원하는 웹 어플리케이션을 만들 수 있다.
또한, state가 변경되면 render함수를 재호출하는 방식으로 작동하는데, 이때 모든 것이render 된다면 매우 비효율 적일 것이다. 그렇기에 가상돔트리를 이용해 실제 변경된 부분만 실제 돔트리에 업데이트 하는 방식을 사용한다. 또한 업데이트해야하는 내용을 모았다가 한번에 업데이트 하기 때문에 React는 매우 빠른 성능을 보여준다. 👻

(가상돔은 이전 UI상태를 메모리에 유지해서, 변경될 UI의 최소 집합을 계산하는 기술이다.)

정리하자면,

  • Reactcomponent들로 이루어졌다는 것,
  • React는 업데이트 될때마다 어플리케이션 전체가 다시 렌더된다는 것이다.

이러한React를 배워야하는 이유를 알아보기전,
프레임워크라이브러리의 차이를 명확하게 하고 넘어가보자.


Library & Framework

두 가지의 차이를 집짓기에 비교해보자면,

프레임워크
이미 집의 구조나 철제들이 다 지어져 있는 완성품 상태다. 우리는 벽돌의 색을 바꾸거나, 집안의 가구를 재배치 하는 등의 작업들을 할 수 있다.

대표적인 프레임워크로는 Angular가 있다. Angular는 UI뿐만아니라, 라우팅, 스테이트, HTTP clinet등 많은 기능이 묶여 제공된다. 그렇기 때문에 우리가 Angular를 이용하려면 이런 아이들을 이용해서 웹어플리케이션을 만들 수 있다. 즉, 프레임워크는 정해진 골격안에서 우리가 원하는 기능을 구현해야한다는 것이 기본 특징이다. 그렇기에 처음 진입장벽이 높을 수 있다, 시작하기 위해 배워야할게 많기 때문!!🙄

반면, 라이브러리
벽돌과 페인트 등 우리가 원하는 재료를 골라 집을 지을 수 있다. 즉, 작은 부품과 재료들 하나하나를 라이브러리라고 할 수 있다.

대표적인 라이브러리로는 React가 있으며, React를 사용할 때에는 라우팅을 관리하는 라이브러리, UI를 구현하는 라이브러리 등 우리가 원하는 기능을 골라 사용하면 된다.

참고로, Vue는 프레임워크이나 정해진 기능이 많지 않아 프레임워크와 라이브러리의 중간정도?에 있다고 생각해 볼 수 있다.


React를 배워야 하는 이유

React
1) 현재 개발자들이 선호하는 라이브러리이기 때문에 강력한 커뮤니티가 형성되어있으며,
2) 개발 생태계가 잘 구축되어있다. 즉, 구글링하면 내가 궁금해했던 사항은 웬만하면 다 찾을 수 있다는 말씀!
3) 컴포넌트 단위들로 UI관리하기 편하기 때문에 유지보수에도 매우 편리하다!
4) 또한, React로 웹 어플리케이션을 만들고, 리액트 네이티브로 모바일 어플리케이션, 일렉트론으로 데스트탑 어플리케이션까지 만들 수있으니 최고다👍🏻💜

profile
🌈그림으로 기록하는 개발자🌈

0개의 댓글