티스토리 뷰

교재 <리액트 인 액션>

 

리액트 네이티브의 강점

개발자 가용성

  • 새로운 언어를 배울 필요 없는 개발 플랫폼
        => why? 자바스크립트로 전부 이루어져있기 때문에

 

 

개발자 생산성

  • 기존엔 안드로이드/iOS 팀 모두가 있어야 앱 개발 가능했었음
        => react-native의 등장으로 개발자는 안드로이드/iOS 개발자로 제한 필요 X
  • Redux의 사용으로 앱 전용 플랫폼 뿐 아니라 웹에서도 데이터 아키텍처 공유 가능

 

 

성능

  • 다른 크로스 플랫폼들은 네이티브 앱의 성능을 못 따라가지만 리액트 네이티브는 이에 크게 뒤지지 않음

 

 

단방향 데이터 흐름

 

 

개발자 경험 (빠른 컴파일)

  • 웹은 새로고침(F5)을 통해 빠른 컴파일이 가능, but 네이티브 앱에서는 컴파일 시간이 매우 긺
    => 리액트 네이티브는 크롬과 사파리 디버깅 도구를 이용하여 빠른 컴파일이 가능
  • hot reloading 이라는 빌트인 기능을 통해 변경된 컴포넌트만 빠르게 리로딩, UI의 변화를 빠르게 확인 가능

 

 

트랜스파일링

  • 트랜스파일링(transpilation) : 트랜스파일러(transpiler)가 특정 프로그램 언어로 작성된 소스코드를 받아서 다른 프로그램 언어로 코드를 변환해 주는 것
    => 구버전에서도 언어의 최신 기능을 사용하고자 할 때 사용
  • 리액트 네이티브는 내장된 바벨(Babel)을 사용

** 바벨: 트랜스파일링 오픈 소스 도구로, 최신 자바스크립트 언어의 기능을 사용하게 해줌

 

 

생산성과 효율성

  • 앞서 언급한 강점들(개발자의 가용성/생산성)에 따른 생산성과 효율성의 증대

 

 

커뮤니티

  • 커뮤니티가 크고 활발
        => 이로 인해 얻을 수 있는 지원이 많아 개발시에 유용하다

 

 

오픈 소스

  • 오픈소스의 장점: 실제 사용자가 개발에 관여해 사용자가 바라는 것에 근접하게 소프트웨어를 개선 가능
    => 다른 비공개 소프트웨어에서는 버그 수정 및 개선 팀이 별도로 존재. 비용 ↑↑

 

 

빈번한 업데이트

  • 리액트 네이티브나 하이브리드 앱 프레임워크를 사용시
    => 앱 스토어 승인(대략 2주)을 거치지 않고도 사용자 기기에 직접 업데이트된 모바일 앱 배포 가능

 

Comments