본문 바로가기

FE Dev./React

React Native와 ReactJS 차이점

ReactJS

ReactJS는 사용자 인터페이스 및 웹 애플리케이션 구축을 위해 프런트 엔드 웹을 지원하고 서버에서 실행되는 JavaScript 라이브러리이다.

 

재사용 가능한 구성 요소의 개념을 따른다.

  • 페이스북에서 만든 자바스크립트 오픈소스 라이브러리.
  • 웹, 웹 앱, SPA등 개발 시 사용.
  • 프론트와 서버 사이드 모두 제공.
  • 가상의 DOM을 사용하며 이는 전체 새로고침보다 빠르다(필요한 부분만 고침).
  • HTML태그 사용.
  • 컴포넌트 재사용이 용이함.
return(
    <div>
      <p>Hello World</p>
    </div>
)

React Native

React Native는 호스트에서 사용할 수 있는 JavaScript 엔진을 사용하는 모바일 프레임워크로, JavaScript에서 다양한 플랫폼(iOS, Android 및 Windows Mobile)용 모바일 애플리케이션을 빌드할 수 있다.
이를 통해 ReactJS를 사용하여 재사용 가능한 컴포넌트를 빌드하고 통신할 수 있다.

 

  • 페이스북에서 만든 자바스크립트 오픈소스 모바일 앱 프레임워크.
  • 크로스 플랫폼 모바일 앱 개발에 사용.
  • 웹 개발자에게 모바일 앱 개발을 쉽게 해줌!
  • HTML태그 사용하지 않음.
  • 자체 애니메이션 라이브러리를 제공. (css로 작성할 필요 없음)
  • 리액트의 Webpack같은 bundler설정이 필요 없음. 이미 가지고 있다.
  • ios와 Android 동시 개발 가능.
return(
    <View>
      <Text>Hello World</Text>
    </View>
)

 

 

공통점

둘 다 페이스북에서 오픈 소스로 공개한 공통점이 있다.

둘 다 JavaScript의 JSX 구문 확장을 따른다. 이는 내부적으로 React.createElement 호출로 컴파일된다.

 

 

 

차이점

간단하게 말해, React.js는 웹 개발, React Native는 모바일 앱 개발 이다.

React는 웹 개발에 사용되는 라이브러리인 반면,
React Native는 플랫폼이라는 점을 유의하면된다.

React Native에는 div, p, h1 등과 같은 HTML 요소가 없지만 대신 모바일에 적합한 구성 요소가 있다.

 

 

 

참조

 

 

 

반응형
LIST