# TypeScript untuk React & React Native (React Native) > Tipe props/state, generics, discriminated unions, typing hooks, tipe React Navigation, respons API - 22 pertanyaan wawancara - Junior - [Pertanyaan Wawancara: React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara.md) ## 1. Apa keuntungan utama menggunakan TypeScript dalam proyek React Native? **Jawaban** TypeScript mendeteksi kesalahan tipe pada saat kompilasi, bahkan sebelum aplikasi dijalankan. Ini secara signifikan mengurangi bug produksi yang terkait dengan tipe yang salah, meningkatkan autocompletion di IDE, dan membuat kode lebih mendokumentasikan diri sendiri. Dalam proyek React Native, ini sangat membantu untuk menentukan tipe props, state, dan respons API dengan benar. ## 2. Apa perbedaan antara type dan interface di TypeScript? **Jawaban** Interface dapat diperluas dan digabungkan melalui declaration merging, yang berguna untuk memperluas tipe dari pustaka pihak ketiga. Type lebih fleksibel dan dapat merepresentasikan union, intersection, dan tipe primitif. Dalam praktiknya, untuk objek sederhana keduanya dapat dipertukarkan, tetapi interface lebih disukai untuk props komponen React karena memungkinkan perluasan. ## 3. Bagaimana cara menentukan tipe props komponen fungsional React Native dengan benar? **Jawaban** Metode yang disarankan adalah mendefinisikan interface untuk props dan menggunakannya sebagai tipe generik atau anotasi parameter. Anda dapat menggunakan React.FC dengan generik, atau langsung menentukan tipe props dalam signature fungsi. Pendekatan kedua sering lebih disukai karena React.FC secara implisit menyertakan children, yang mungkin tidak diinginkan. ## 19 pertanyaan lagi tersedia - Bagaimana cara menentukan tipe hook useState dengan tipe kustom di TypeScript? - Apa itu tipe generik (generic) di TypeScript dan untuk apa digunakan? Daftar gratis: https://sharpskill.dev/id/login ## Topik wawancara React Native lainnya - [Dasar-Dasar JavaScript](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/javascript-essentials.md): 25 pertanyaan, Junior - [Dasar-Dasar React](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/react-fundamentals.md): 20 pertanyaan, Junior - [Dasar-Dasar React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/react-native-basics.md): 22 pertanyaan, Junior - [React Hooks](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/react-hooks.md): 20 pertanyaan, Junior - [Komponen & API React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-components-api.md): 20 pertanyaan, Junior - [Styling & Layout React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-styling-layout.md): 18 pertanyaan, Junior - [Navigasi React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-navigation.md): 22 pertanyaan, Mid-Level - [Manajemen State React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-state-management.md): 24 pertanyaan, Mid-Level - [Networking & API React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-networking-api.md): 20 pertanyaan, Mid-Level - [Persistensi Data](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-data-persistence.md): 20 pertanyaan, Mid-Level - [Formulir & Validasi](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-forms-validation.md): 18 pertanyaan, Mid-Level - [Animasi React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-animations.md): 22 pertanyaan, Mid-Level - [Native Modules & Bridge](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-native-modules.md): 20 pertanyaan, Mid-Level - [Kode Spesifik Platform](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-platform-specific-code.md): 18 pertanyaan, Mid-Level - [Izin & API Perangkat](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-permissions-apis.md): 20 pertanyaan, Mid-Level - [Push Notifications](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-push-notifications.md): 18 pertanyaan, Mid-Level - [Testing React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-testing.md): 20 pertanyaan, Mid-Level - [Debugging React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-debugging.md): 18 pertanyaan, Mid-Level - [Build & Deployment](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-build-deployment.md): 20 pertanyaan, Mid-Level - [Expo vs React Native Bare](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/expo-vs-bare-rn.md): 18 pertanyaan, Mid-Level - [Optimasi Performa](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-performance-optimization.md): 24 pertanyaan, Senior - [Manajemen Memori](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-memory-management.md): 20 pertanyaan, Senior - [Architecture Patterns](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-architecture-patterns.md): 22 pertanyaan, Senior - [New Architecture React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-new-architecture.md): 24 pertanyaan, Senior - [Praktik Terbaik Keamanan](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-security-best-practices.md): 20 pertanyaan, Senior - [Offline-First Architecture](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-offline-first.md): 20 pertanyaan, Senior - [CI/CD React Native](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-ci-cd.md): 20 pertanyaan, Senior - [Monorepo & Berbagi Kode](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-monorepo-architecture.md): 18 pertanyaan, Senior - [Topik Lanjutan](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-advanced-topics.md): 22 pertanyaan, Senior - [Siklus Hidup Aplikasi & Eksekusi Background](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-app-lifecycle-background.md): 20 pertanyaan, Mid-Level - [Autentikasi & Manajemen Sesi](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-auth-session-management.md): 22 pertanyaan, Mid-Level - [Monitoring & Crash Reporting](https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/rn-monitoring-crash-reporting.md): 20 pertanyaan, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/id/technologies/react-native/pertanyaan-wawancara/typescript-for-react-native