React | Why React? (리액트란)

Ryan·2020년 11월 7일
0

React

목록 보기
4/8
post-thumbnail

1. Web Application

: 브라우저를 열고 사이트에 들어가면...
보여지는 것 (UI: User Interface) 과 할 수 있는 것 (UX: User Experience) 이 굉장히 많다.
이러한 이유로 요새는 웹 페이지(Web Page)라는 단어보다 웹 애플리케이션이(Web Application) 이라는 단어가 많이 사용되기도 한다.
무슨 차이가 있을까?

이처럼 애플리케이션의 규모가 커지고 다양한 UI, UX를 구현하기 위해서는 이전의 방법(DOM, jQuery)으로는 애플리케이션을 개발하고 코드를 유지보수 하는 것이 어려워졌다.
화면의 그 많은 DOM 요소들에 직접 접근해서 조작하고 관리하기란 쉽지 않기 때문이다.
(jQuery도 결국엔 쉽게 DOM에 접근해서 조작을 가능하게 하는 메소드의 모음이기 때문에 마찬가지)

규모가 커지고 복잡한 애플리케이션을 개발하며 생산성을 향상시키고 많은 양의 데이터 관리와 코드 유지 보수를 더욱 편리하게 하기 위해 다양한 Frontend Framework(Library)가 등장하게 된다.
그 중 가장 많이 쓰이는 세 가지가 Angular, Vue, React 이다.


2. Frontend Framework(Library)

1) Angular

2010년 Google에서 개발한 Framework. TypeScript 기반으로 매우 안정적이고 탄탄한 Frontend App 개발이 가능하며 Framework답게 다양한 기능이 내장되어있다. 무겁고 배우기 어렵다는 단점이 있다.

2) Vue

2014년 Evan You라는 개인이 개발한 Framework. 코드가 깔끔하고 배우기 쉽기 때문에 가장 나중에 생겼지만 성장 속도가 정말 빠르다.

3) React

“지속적으로 데이터가 변화하는 대규모 애플리케이션 구축하는 것” 을 목표로 2013년 Facebook에서 개발한 Library. MVC(Model-View-Controller) Architecture (ex. Angular, Vue)와는 다르게 리액트는 오로지 View만 담당한다.
그만큼 내장되어 있는 기능이 부족해 third-party 라이브러리(ex. React-router, Redux)를 함께 사용한다.
페이스북의 지속적인 관리와 함께 생태계가 활성화 되어 있으며 다양한 자료, 그리고 React Native의 사용으로 인해 사용자가 꾸준히 증가한다.


3. 리액트가 특별한 이유?

1) 엄청난 생태계

: jQuery를 생각해보자. 불과 수년전까지만 해도 웹페이지를 만든다면 jQuery를 사용하는게 너무나 당연했다. 그러나 jQuery는 프레임워크이고 자바스크립트를 배우지 않고 jQuery를 배워버리기도 했다. 또한 jQuery만을 위한 수많은 플러그인이 나왔다.

지금의 리액트도 비슷하다. 엄청나게 빠른 속도로 생태계를 넓혀가고 있다.

2) 많은 서드파티 라이브러리

: 리액트는 정말 뷰만을 위한 라이브러리이다.
그러다보니 서드 파티 라이브러리들이 수도 없이 많다.
만약 실력이 된다면 직접 내게 필요한 서드 파티 라이브러리를 만들어서 쓰면 되는 것이다. 그럴일은 없을 것이다

profile
"꾸준한 삽질과 우연한 성공"

0개의 댓글