React-Native #2 | RN 패키지, 커뮤니티 패키지

HyeonWooGa·2022년 10월 4일
0

React-Native

목록 보기
3/6

들어가기에 앞서

컴포넌트와 API 의 차이

컴포넌트

  • 화면에 렌더링할 항목, 함수의 return 키워드 안에 있습니다.
  • <View>, <Text>, <StatusBar />

API

  • 단지 자바스크립트 코드
  • Vabration

React-Native 패키지

개요

  • Core, Android, IOS 카테고리로 각각 컴포넌트들과 API 들이 있습니다.
  • 초기에 비해 현재는 보다 적은 컴포넌트들과 API 를 제공하고 있습니다.
    • 이유 : 엄청나게 많은 컴포넌트들과 API들을 제공, 관리 해주는 것이 부담이 되었나봅니다.
  • 그리고 RN 패지지에 없는 컴포넌트들은 커뮤니티 패키지(서드파티 패키지) 를 사용하라고 안내하고 있습니다.
    • 이유 : 따라서 RN 팀은 RN 자체의 성능에 집중하고 보다 많은 기능들은 서드파티 패키지에 맡기고 있습니다.

커뮤니티 패키지 (서드파티 패키지)

개요

  • RN 패키지에서 제공되지 않는 컴포넌트들과 API 들의 커뮤니티 패키지
  • React Native Directory (https://reactnative.directory/) 에서 커뮤니티(서드파티)가 관리 하고 있습니다.
  • 옵션이 많기때문에 어떤 옵션을 선택해야할지 잘 결정해야합니다.

장점

  • 멋진 사람들이 많기 때문에 좋은 패키지들이 많습니다.

단점

  • 커뮤니티에 의존해야 합니다.

Expo SDK

  • RN 에서 지원하지 않지만 중요한 컴포넌트 및 API 들을 제공합니다.
  • Expo SDK Doc (https://docs.expo.dev/versions/latest/)
  • APIs
    • 공식문서를 따라 설치 후 사용 가능
      • DocumentPicker : 사용자의 파일을 불러오는 API
      • SMS : 문자를 보내는 API
    • RN 패키지에서 복제하여 개선된 컴포넌트, API 를 제공하는 경우도 있습니다.
      • StatusBar : RN 패키지와 Expo SDK 에서 공통으로 제공되는 컴포넌트
      • AsyncStorage : RN 패키지에서 과거에 지원했으나 지금은 제공하지 않습니다.

결론

  • React-Native 팀은 패키지 제공을 축소화하고 React-Native 의 성능 개선에 집중하고 있습니다.
  • 그래서 커뮤니티(서드파티) 패키지를 사용해야 합니다.
  • 그 중에서 Expo SDK 는 다양한 컴포넌트와 API 들을 제공합니다.
  • 그 외의 컴포넌트, API 들은 React Native Directory 에서 찾아보거나 직접 구현할 수 있습니다.
profile
Aim for the TOP, Developer

0개의 댓글