React Native

Native Modules & Bridge

Native modules, Turbo Modules, JSI, iOS/Android 브리징, 서드파티 모듈

20 면접 질문·
Mid-Level
1

React Native에서 native module이란 무엇인가요?

답변

native module은 네이티브 언어(iOS는 Objective-C/Swift, Android는 Java/Kotlin)로 작성된 코드로, 기능을 JavaScript 코드에 노출합니다. 이를 통해 생체 인식 센서나 Bluetooth처럼 React Native에서 직접 사용할 수 없는 네이티브 API에 접근할 수 있습니다.

2

React Native의 전통적인 아키텍처에서 bridge의 역할은 무엇인가요?

답변

bridge는 전통적인 아키텍처에서 JavaScript 스레드와 네이티브 스레드 간의 통신 메커니즘입니다. 데이터를 JSON으로 직렬화하여 두 환경 간에 비동기적으로 전송합니다. 이 비동기 통신은 빈번한 작업에서 지연을 유발할 수 있습니다.

3

구 아키텍처에서 iOS의 네이티브 메서드를 JavaScript에 노출하려면 어떻게 하나요?

답변

구 아키텍처의 iOS에서는 NSObject를 상속하고 RCTBridgeModule 프로토콜을 구현하는 클래스를 만들어야 합니다. RCT_EXPORT_MODULE() 매크로가 모듈을 등록하고, RCT_EXPORT_METHOD()가 각 메서드를 JavaScript에 노출합니다. 이 매크로들이 필요한 bridging 코드를 생성합니다.

4

구 아키텍처에서 Android의 네이티브 메서드를 노출하려면 어떤 어노테이션을 사용하나요?

5

React Native의 새 아키텍처에서 JSI(JavaScript Interface)란 무엇인가요?

+17 면접 질문

다음 면접을 위해 React Native을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기