웹 프론트엔드 프런트엔드 Q&A 리액트 프레임워크는 언제 나왔나요?

리액트 프레임워크는 언제 나왔나요?

Dec 05, 2022 pm 05:36 PM
react

React 프레임워크는 2013년에 출시되었습니다. React는 Facebook의 내부 프로젝트에서 시작되었으며 2013년 5월에 오픈 소스로 제공되었습니다. React는 사용자 인터페이스를 구축하는 데 사용되는 JavaScript 라이브러리로, 주로 UI를 구축하는 데 사용됩니다. 사용자는 UI 렌더링에 도움이 되는 선언 코드, 정적 HTML DOM 요소 또는 동적 변수 및 대화형 전달과 같은 다양한 유형의 매개변수를 React에서 전달할 수 있습니다. 응용 프로그램 구성 요소.

리액트 프레임워크는 언제 나왔나요?

이 튜토리얼의 운영 환경: Windows 7 시스템, React18 버전, Dell G3 컴퓨터.

1. React의 기원과 발전

React는 사용자 인터페이스를 구축하는 데 사용되는 JavaScript 라이브러리입니다. 회사가 시장에 있는 모든 JavaScript MVC 프레임워크에 만족하지 않았기 때문에 Facebook 내부 프로젝트에서 시작되었습니다. Instagram 웹사이트를 설정하기 위해 자신만의 세트를 작성하기로 결정했습니다. 만들고 나서 이 세트가 매우 유용하다는 것을 알게 되었고, 2013년 5월에 오픈 소스로 공개되었습니다.

2. React의 출발점

HTML 기반의 프론트엔드 인터페이스 개발은 점점 더 복잡해지고 있으며, 그 본질적인 문제는 기본적으로 서버나 사용자로부터의 동적 데이터를 어떻게 효율적으로 반영하느냐에 달려있습니다. 복잡한 사용자 인터페이스에 입력합니다. Fackbook의 React 프레임워크는 이 문제를 완전히 지향하는 솔루션입니다. 공식 웹사이트 설명에 따르면 시작점은 시간에 따라 변경되는 데이터로 대규모 애플리케이션을 개발하는 데 사용됩니다(시간에 따라 변경되는 데이터로 대규모 애플리케이션 구축). 전통적인 프런트엔드 개발과 비교하여 React는 프런트엔드 인터페이스의 고성능 및 효율적인 개발을 달성하기 위한 상당히 대안적인 접근 방식을 열었습니다.

React는 주로 UI 구축에 사용됩니다. UI 렌더링에 도움이 되는 선언 코드, 정적 HTML DOM 요소, 동적 변수, 심지어 대화형 애플리케이션 구성요소까지 React에서 다양한 유형의 매개변수를 전달할 수 있습니다.

3. Recat과 기존 MVC의 관계

경량 뷰 레이어 라이브러리! 사용자 인터페이스 구축을 위한 JavaScript 라이브러리

React는 기껏해야 MVC의 (뷰) 레이어로 간주될 수 있습니다. React는 MVC 개발 모델을 완전히 인식하지 못합니다. UI. React는 인터페이스를 독립적인 작은 블록으로 나누는 것으로 간단히 이해할 수 있습니다. 각 블록은 구성 요소를 결합하고 중첩하여 페이지를 구성할 수 있습니다. 4. React의 고성능 구현: Virtual DOM

원리: 개발 과정에서 예측할 수 없는 데이터를 실시간으로 UI에 반영해야 하고, 그 다음에는 DOM을 운영해야 합니다. 그러나 DOM을 자주 또는 복잡하게 조작하면 많은 성능 문제가 발생합니다. ——고성능의 복잡한 DOM 작업을 수행하는 방법은 일반적으로 프런트엔드 개발자의 기술을 나타내는 중요한 지표입니다. React는 이를 위해 가상 DOM(가상 DOM) 메커니즘을 도입합니다. DOM API 세트는 자바스크립트를 사용하여 브라우저 측에서 구현됩니다. React를 기반으로 개발할 때 모든 DOM 구성은 데이터가 변경될 때마다 전체 DOM 트리를 다시 렌더링합니다. 그런 다음 React는 현재 전체 DOM 트리를 이전 DOM 트리와 비교하여 DOM 구조의 차이를 얻습니다. , 변경이 필요한 부분만 실제 브라우저 DOM 업데이트를 수행합니다. 또한 React는 가상 DOM의 새로 고침을 일괄 처리할 수 있습니다. 이벤트 루프(이벤트 루프)의 두 가지 데이터 변경 사항이 병합됩니다. 예를 들어 노드 내용을 A-B, B-A로 계속 변경하면 React는 A가 B가 된다고 생각합니다. , 그리고 다시 B에서 A로 UI에는 변화가 없으며 수동으로 제어하는 ​​경우 이 로직은 일반적으로 매우 복잡합니다

React Fiber:

React16 이후 출시된 React Core 알고리즘, React Fiber는 업데이트입니다. 핵심으로 알고리즘 재구현(공식 웹사이트 성명). diff 알고리즘은 이전에 사용되었습니다이전 React에서는 업데이트 프로세스가 동기식이어서 성능 문제가 발생할 수 있습니다.

React는 컴포넌트 트리를 로드하거나 업데이트하기로 결정하면 각 컴포넌트의 수명 주기 함수 호출, Virtual DOM 계산 및 비교, 마지막으로 DOM 트리 업데이트 등 많은 작업을 수행합니다. 즉, 로딩이나 업데이트 프로세스가 시작되자마자 중간에 중단되지 않습니다. JavaScript의 단일 스레드 특성으로 인해 구성 요소 트리가 매우 크고 각 동기화 작업에 시간이 너무 오래 걸리면 지연이 발생합니다.

React Fiber의 방법은 실제로 매우 간단합니다. 바로 샤딩입니다. 긴 작업을 여러 개의 작은 조각으로 나눕니다. 각 작은 조각의 작업 시간은 매우 짧습니다. 비록 총 시간은 여전히 ​​매우 길지만, 각 작은 조각이 실행된 후에는 다른 작업을 실행할 기회가 주어지므로 유일한 스레드가 됩니다. 배타적이지 않으며 다른 작업은 계속 실행될 수 있습니다.

5. React의 특징과 장점

1. 가상 DOM

이전 DOM 운영 방식은 document.getElementById()를 통해 이루어졌습니다. 이 프로세스에는 실제로 DOM 구조를 먼저 읽고 변환하는 과정이 포함되었습니다. 구조를 변수로 변환하고 연산을 수행

그리고 Reactjs는 일련의 DOM 모델을 변수 형태로 정의합니다. 모든 작업과 변환이 변수에 직접적으로 수행되므로 실제 DOM을 실행할 필요성이 줄어듭니다. 성능이 정말 높습니다. 프레임워크는 DOM을 다루지 않습니다

2. 컴포넌트 시스템

React의 핵심 아이디어는 페이지의 모든 영역이나 요소를 컴포넌트로 간주할 수 있다는 것입니다

그럼 컴포넌트란 무엇일까요?

Component는 html, css, js 및 이미지 요소를 동시에 포함하는 집합체를 말합니다

3. 단방향 데이터 흐름

사실, Reactjs의 핵심 내용은 데이터 바인딩입니다. 데이터 바인딩이라고 불리는 것은 일부 서버 측 데이터를 프런트엔드 페이지에 바인딩하고 개발자는 비즈니스

4 JSX 구문

구현에만 집중할 수 있다는 것을 의미합니다. vue에서는 렌더링 기능을 사용하여 빌드합니다. 저장하기 때문에 성능이 더 높은 컴포넌트의 dom 구조 템플릿을 찾아 컴파일하는 과정을 거쳤는데, createElement를 사용하여 렌더에서 구조를 생성할 때 코드의 가독성이 떨어지고 로드가 많아집니다. JSX 구문을 사용하여 렌더에서 DOM을 생성하면 이 문제를 해결할 수 있지만 전제는 jsx

를 컴파일하려면 도구를 사용해야 한다는 것입니다. 【관련 권장 사항: Redis 비디오 튜토리얼, 프로그래밍 비디오

위 내용은 리액트 프레임워크는 언제 나왔나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

React와 WebSocket을 사용하여 실시간 채팅 앱을 구축하는 방법 React와 WebSocket을 사용하여 실시간 채팅 앱을 구축하는 방법 Sep 26, 2023 pm 07:46 PM

React와 WebSocket을 사용하여 실시간 채팅 애플리케이션을 구축하는 방법 소개: 인터넷의 급속한 발전과 함께 실시간 커뮤니케이션이 점점 더 주목을 받고 있습니다. 실시간 채팅 앱은 현대 사회 생활과 직장 생활에서 필수적인 부분이 되었습니다. 이 글에서는 React와 WebSocket을 사용하여 간단한 실시간 채팅 애플리케이션을 구축하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 1. 기술적 준비 실시간 채팅 애플리케이션 구축을 시작하기 전에 다음과 같은 기술과 도구를 준비해야 합니다. React: 구축을 위한 것

React 프론트엔드와 백엔드 분리 가이드: 프론트엔드와 백엔드의 분리 및 독립적 배포를 달성하는 방법 React 프론트엔드와 백엔드 분리 가이드: 프론트엔드와 백엔드의 분리 및 독립적 배포를 달성하는 방법 Sep 28, 2023 am 10:48 AM

React 프론트엔드와 백엔드 분리 가이드: 프론트엔드와 백엔드 분리 및 독립적 배포를 달성하는 방법, 구체적인 코드 예제가 필요합니다. 오늘날의 웹 개발 환경에서는 프론트엔드와 백엔드 분리가 추세가 되었습니다. . 프런트엔드 코드와 백엔드 코드를 분리함으로써 개발 작업을 보다 유연하고 효율적으로 수행하고 팀 협업을 촉진할 수 있습니다. 이 기사에서는 React를 사용하여 프런트엔드와 백엔드 분리를 달성하고 이를 통해 디커플링 및 독립적 배포 목표를 달성하는 방법을 소개합니다. 먼저 프론트엔드와 백엔드 분리가 무엇인지 이해해야 합니다. 전통적인 웹 개발 모델에서는 프런트엔드와 백엔드가 결합되어 있습니다.

React와 Flask를 사용하여 간단하고 사용하기 쉬운 웹 애플리케이션을 구축하는 방법 React와 Flask를 사용하여 간단하고 사용하기 쉬운 웹 애플리케이션을 구축하는 방법 Sep 27, 2023 am 11:09 AM

React와 Flask를 사용하여 간단하고 사용하기 쉬운 웹 애플리케이션을 구축하는 방법 소개: 인터넷의 발전과 함께 웹 애플리케이션의 요구 사항은 점점 더 다양해지고 복잡해지고 있습니다. 사용 편의성과 성능에 대한 사용자 요구 사항을 충족하기 위해 최신 기술 스택을 사용하여 네트워크 애플리케이션을 구축하는 것이 점점 더 중요해지고 있습니다. React와 Flask는 프런트엔드 및 백엔드 개발을 위한 매우 인기 있는 프레임워크이며, 함께 잘 작동하여 간단하고 사용하기 쉬운 웹 애플리케이션을 구축합니다. 이 글에서는 React와 Flask를 활용하는 방법을 자세히 설명합니다.

React 반응형 디자인 가이드: 적응형 프런트엔드 레이아웃 효과를 얻는 방법 React 반응형 디자인 가이드: 적응형 프런트엔드 레이아웃 효과를 얻는 방법 Sep 26, 2023 am 11:34 AM

React 반응형 디자인 가이드: 적응형 프런트엔드 레이아웃 효과를 달성하는 방법 모바일 장치의 인기와 멀티스크린 경험에 대한 사용자 요구가 증가함에 따라 반응형 디자인은 현대 프런트엔드 개발에서 중요한 고려 사항 중 하나가 되었습니다. 현재 가장 인기 있는 프런트 엔드 프레임워크 중 하나인 React는 개발자가 적응형 레이아웃 효과를 달성하는 데 도움이 되는 풍부한 도구와 구성 요소를 제공합니다. 이 글에서는 React를 사용하여 반응형 디자인을 구현하는 데 대한 몇 가지 지침과 팁을 공유하고 참조할 수 있는 구체적인 코드 예제를 제공합니다. React를 사용한 Fle

React와 RabbitMQ를 사용하여 안정적인 메시징 앱을 구축하는 방법 React와 RabbitMQ를 사용하여 안정적인 메시징 앱을 구축하는 방법 Sep 28, 2023 pm 08:24 PM

React 및 RabbitMQ를 사용하여 안정적인 메시징 애플리케이션을 구축하는 방법 소개: 최신 애플리케이션은 실시간 업데이트 및 데이터 동기화와 같은 기능을 달성하기 위해 안정적인 메시징을 지원해야 합니다. React는 사용자 인터페이스 구축을 위한 인기 있는 JavaScript 라이브러리인 반면 RabbitMQ는 안정적인 메시징 미들웨어입니다. 이 기사에서는 React와 RabbitMQ를 결합하여 안정적인 메시징 애플리케이션을 구축하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. RabbitMQ 개요:

React 코드 디버깅 가이드: 프런트엔드 버그를 빠르게 찾아 해결하는 방법 React 코드 디버깅 가이드: 프런트엔드 버그를 빠르게 찾아 해결하는 방법 Sep 26, 2023 pm 02:25 PM

React 코드 디버깅 가이드: 프런트엔드 버그를 빠르게 찾고 해결하는 방법 소개: React 애플리케이션을 개발할 때 애플리케이션을 충돌시키거나 잘못된 동작을 유발할 수 있는 다양한 버그에 자주 직면하게 됩니다. 따라서 디버깅 기술을 익히는 것은 모든 React 개발자에게 필수적인 능력입니다. 이 기사에서는 프런트엔드 버그를 찾고 해결하기 위한 몇 가지 실용적인 기술을 소개하고 독자가 React 애플리케이션에서 버그를 빠르게 찾고 해결하는 데 도움이 되는 특정 코드 예제를 제공합니다. 1. 디버깅 도구 선택: In Re

React Router 사용자 가이드: 프런트엔드 라우팅 제어 구현 방법 React Router 사용자 가이드: 프런트엔드 라우팅 제어 구현 방법 Sep 29, 2023 pm 05:45 PM

ReactRouter 사용자 가이드: 프런트엔드 라우팅 제어 구현 방법 단일 페이지 애플리케이션의 인기로 인해 프런트엔드 라우팅은 무시할 수 없는 중요한 부분이 되었습니다. React 생태계에서 가장 널리 사용되는 라우팅 라이브러리인 ReactRouter는 풍부한 기능과 사용하기 쉬운 API를 제공하여 프런트 엔드 라우팅 구현을 매우 간단하고 유연하게 만듭니다. 이 기사에서는 ReactRouter를 사용하는 방법을 소개하고 몇 가지 구체적인 코드 예제를 제공합니다. ReactRouter를 먼저 설치하려면 다음이 필요합니다.

React와 Google BigQuery를 사용하여 빠른 데이터 분석 애플리케이션을 구축하는 방법 React와 Google BigQuery를 사용하여 빠른 데이터 분석 애플리케이션을 구축하는 방법 Sep 26, 2023 pm 06:12 PM

React와 Google BigQuery를 사용하여 빠른 데이터 분석 애플리케이션을 구축하는 방법 소개: 오늘날 정보 폭발 시대에 데이터 분석은 다양한 산업에서 없어서는 안 될 연결 고리가 되었습니다. 그중에서도 빠르고 효율적인 데이터 분석 애플리케이션을 구축하는 것은 많은 기업과 개인이 추구하는 목표가 되었습니다. 이 기사에서는 React와 Google BigQuery를 사용하여 빠른 데이터 분석 애플리케이션을 구축하는 방법을 소개하고 자세한 코드 예제를 제공합니다. 1. 개요 React는 빌드를 위한 도구입니다.

See all articles