React.js

Corini·2022년 4월 30일
0

React (완료)

목록 보기
1/16

https://velog.velcdn.com/cloudflare/hoho_0815/98802beb-cd1b-4123-a7f4-faa17e9b5dab/react.jpg

React.js

React는 웹 프레임워크로, 자바스크립트 라이브러리의 하나로서 사용자 인터페이스를 만들기 위해 사용된다.출처 : 위키백과

Why React.js ?

React 는 Component 기반의 UI 라이브러리

https://user-images.githubusercontent.com/87301268/161702033-df61752a-2ebf-4a74-873f-4bb8a3c42bfb.jpg

  • 만약 Header 요소에 문제가 생겨서 수정해야 되는 상황이면
  • 기존 방식은 Header 를 포함하고 있는 모든 파일을 수정해야 됩니다.
  • 하지만 컴포넌트화 방식은 컴포넌트가 정의된 파일 하나만 수정하면다른 페이지들은 자동으로 수정 됩니다.
  • 즉, 공통으로 사용되는 요소의 수정 사항이나, 문제가 발생 했을 경우 수정하기 수월하고,유지보수가 좋아집니다.

React 는 선언형 프로그래밍

https://user-images.githubusercontent.com/87301268/161704761-27ce46cd-7654-4cc2-81c7-d6c0370abb84.jpg

  • 프론트엔드 측면에서 오른쪽의 선언형 프로그래밍이 요즘 시대에 더 각광 받고 있습니다.

Virtual DOM ( 가상 돔 )

  • DOM : 브라우저가 실제로 사용하는 객체 https://user-images.githubusercontent.com/87301268/161704763-5e512e34-3680-4a61-a295-6a7e924fa614.jpg
  • DOM 의 흐름 https://user-images.githubusercontent.com/87301268/161704765-91f3830a-278f-4606-a888-59db2a63f0d3.jpg
  • DOM 에서 변화가 일어날 때 마다 위의 작업이 계속 반복 됩니다.
  • 잦은 업데이트에서 필요 이상의 연산이 필요하고, 성능 저하의 문제로 이어집니다.
  • Virtual DOM https://user-images.githubusercontent.com/87301268/161704767-17d1128f-a641-4baf-b94d-73a78c8df0d3.jpg
  • 기존의 발생하는 변화를 실시간으로 실제 DOM (화면에 나타나는 DOM) 에 업데이트 하지 않고
  • 가상의 DOM 을 업데이트 후( 화면에 실제로 그리지는 않습니다.)
  • 업데이트 해야할 부분을 모아서 한 번에 실제 DOM에 업데이트 하는 방식으로 과다 연산을 해결 할 수 있습니다. ( 5번 업데이트 해야할 일을 -> 1번에 해결 한다! )

참고

profile
Coding is playing!

0개의 댓글