React의 등장

누리·2022년 10월 3일
1

React Intro

목록 보기
1/4

React 등장 배경

초기의 웹사이트는 단순히 페이지를 보여주고 다른 페이지로 이동해서 정보를 보는 기능이 전부였다면, 오늘날의 웹사이트는 웹안에서 문서를 작성하고, 쇼핑을하고, SNS를 사용하게 되었다.

사용자가 별도의 응용 소프트웨어를 설치하지 않아도 웹 브라우저를 통해 응용 소프트웨어의 기능을 이용할 수 있도록 만든 웹 서비스를 웹 애플리케이션(Web Application)이라 부른다.
현대의 웹 서비스들은 웹 사이트 보다 웹 애플리케이션이라는 단어로 많이 표현된다.
웹 애플리케이션의 규모가 커짐에 따라서 웹 개발의 복잡성 또한 올라갔다.

초창기에는 HTML CSS Vanila JAvascript 만으로 개발하기에 충분했지만, 복잡성이 올라감에 따라서 기존의 방법으로는 한계를 느끼게 되었다.

이 과정에서 자바스크립트를 활용한 DOM 조작을 쉽게 해주는 jQuery라는 라이브러리가 등장 했지만 DOM을 직접 조작하는 방식에서는 벗어나지 못하는 한계가 있어 화면의 수많은 요소들을 직접 관리하고 조작하는것에 어려움을 느꼈다.

프론트엔드 개발을 더 쉽게 할 수 있게 해줄 라이브러리와 프레임워크에 대한 필요성이 대두되었다. 그 결과 현대 프론트엔드 개발에서 사용되고 있는 프레임워크와 라이브러리가 등장하게 되고, 그 중 많이 사용하는 것은 리액트, 앵글러, 뷰 3가지가 있다

프레임워크와 라이브러리의 공통점 ?

  • 복잡한 개발을 편리하게 하기 위해서 개발자들이 미리 만들어서 제공해준 코드
  • 필요한 기능을 미리 만들어서 사용할 수 있는 형태로 제공
  • 처음부터 모든 것을 다 만드는 것이 아니라 프레임워크와 라이브러리를 이용해 편리하게 개발을 할 수 있게 됨

프레임워크와 라이브러리의 차이점
프레임워크는

  • 개발자가 작업을 하기 위한 전체적인 틀(Frame)을 제공
  • 개발자는 틀 안에서 그 방식에 맞춰서 작업을 해야한다

라이브러리는

  • 전체적인 틀이 아닌 하나의 기능만을 도구처럼 제공
  • 개발자는 필요한 도구(라이브러리)를 가져와서 사용

앵글러와 뷰는 필요한 모든 기능과 틀을 포함하고 있으므로 프레임워크로 분류할 수 있고,
리액트는 UI를 만드는 기능만을 제공해주기에 라이브러리로 분류된다.

리액트를 선택해서 배우는 이유는 
* Angular, Vue와 다르게 대부분의 자바스크립트 문법을 그대로 활용한다
* Meta(구 Facebook)의 지속적인 관리 하에 사용자가 많다(생태계 활성화)
	이에 따라 React에 대한 질의응답 존재, 기반으로 한 기술 많음
	개발자의 생산성 향상
* UI를 구축하는 기능만을 담당하는 라이브러리
	유연하게 확장해서 사용할 수 있음
    실제로 리액트를 이용한 모바일 어플리케이션을 개발하는 React Native 기술 존재
profile
프론트엔드 개발자

0개의 댓글