본문 바로가기
React Native/이론

[ReactNative] 리액트 네이티브 대상 플랫폼 API

by ssollacc 2021. 9. 1.
728x90

리액트 웹과 리액트 네이티브의 가장 큰 차이점은 대상 플랫폼 API를 대하는 방식입니다.

웹 환경에서는 아직도 브라우저마다 표준 기술을 지원하고 있는 정도가 다른데

이런 파편화 특성은 해결해야 하는 문제로 취급됩니다.

이와 달리 리액트 네이티브에서는 해당 플랫폼에서만 지원하는

플랫폼 특유의 API는 멋지고 자연스러운 사용자 경험을 만듦에 있어 중요한 열쇠가 됩니다.

물론 여기에도 고려해야 할 사항이 많은데 모바일 API는

데이터 저장소, 위치 서비스, 카메라와 같은 하드웨어 접근에 대한 모든 것을 포함하고 있습니다.

 

기본적으로 iOS와 안드로이드를 위한 리액트 네이티브일반적으로 많이 사용되는 기능 대부분 지원하고 있습니다.

그리고 리액트 네이티브는 비동기 네이티브 API도 지원합니다.

 

그리고 대상 플랫폼의 API를 리액트 네이티브에서 사용할 수 있게 만드는 과정은

직관적이고 단순해서 어렵지 않게 시도해볼 수 있습니다.

하지만 대상 플랫폼에서 당연하게 여겨지는 것이 무엇인지 생각하고

자연스러운 상호작용을 만들어야한다는 점을 잊지 말아야합니다.

 

리액트 네이티브 브리지를 통해 대상 플랫폼의 모든 기능을 지원하지는 않을 것 입니다.

만약 지원하지 않는 기능을 써야 할 상황에 처한다면

리액트 네이티브에서 해당 기능을 사용할 수 있도록 직접 구현해야할지도 모릅니다.

이미 다른 사람이 해당 기능을 리액트 네이티브에서 사용할 수 있도록 만들었을 수도 있느니

오픈 소스를 검색해보길 권장합니다.

 

대상 플랫폼 API를 사용하는 것은 코드 재사용과 밀접한 관계가 있음을 기억!

특정 플랫폼에만 존재하는 기능을 사용하는 리액트 컴포넌트는 당연히 해당 플랫폼에서만 동작합니다.

이런 컴포넌트를 분리하고 캡슐화하는 것은 앱을 더욱 유연하게 만들어 줍니다.

리액트로 웹을 만드는 경우에도 마찬가지로 리액트와 리액트 네이티브에서 모두 사용 가능한 컴포넌트를 만들면

DOM과 같은 것들은 리액트 네이티브에서 존재하지 않는다는 사실을 잊지 말아야합니다.

 

 

 

 

 

 

 

 다음 내용은 위 책을 참고하여 작성하였습니다:)

 

 

 

728x90

댓글