Home
Jobs

Fundamentals & Core Concepts Interview Questions

Comprehensive fundamentals & core concepts interview questions and answers for React Native. Prepare for your next job interview with expert guidance.

27 Questions Available

Questions Overview

1. What is React Native and how does it differ from React?

Basic

2. What are the core components in React Native?

Basic

3. What is the purpose of the AppRegistry?

Basic

4. What is the difference between Expo and React Native CLI?

Basic

5. What is the Metro bundler and its role?

Basic

6. How does React Native handle debugging?

Basic

7. What is the purpose of package.json in React Native?

Basic

8. What are the main threads in a React Native application?

Basic

9. What is the role of babel.config.js in React Native?

Basic

10. What is Hot Reloading and how does it differ from Live Reloading?

Basic

11. What is the React Native bridge and how does it work?

Moderate

12. How does React Native handle platform-specific code?

Moderate

13. What are native modules and when should you use them?

Moderate

14. What is the role of the Shadow Thread in React Native?

Moderate

15. How does React Native handle JavaScript engines across platforms?

Moderate

16. What is the purpose of linking in React Native?

Moderate

17. How does React Native handle app permissions?

Moderate

18. What is the role of the Metro configuration file?

Moderate

19. How does React Native handle assets and resources?

Moderate

20. What is the New Architecture in React Native?

Advanced

21. How does the Fabric rendering system work?

Advanced

22. What are TurboModules and how do they improve performance?

Advanced

23. How does React Native handle memory management?

Advanced

24. What is the role of JSI (JavaScript Interface) in React Native?

Advanced

25. How does React Native handle native crash reporting?

Advanced

26. What are the considerations for implementing security in React Native?

Advanced

27. How does React Native handle app initialization and loading?

Advanced

1. What is React Native and how does it differ from React?

Basic

React Native is a framework developed by Facebook that allows developers to build native mobile applications using JavaScript and React. Unlike React which creates a virtual DOM for browser rendering, React Native creates actual native UI components that are rendered on mobile devices. This means React Native apps have native performance while still allowing cross-platform development using a single codebase.

2. What are the core components in React Native?

Basic

React Native provides several core components that map directly to native UI elements: View (container), Text (text display), Image (image display), ScrollView (scrollable container), TextInput (text input field), TouchableOpacity/TouchableHighlight (touchable elements), and FlatList/SectionList (optimized scrollable lists).

3. What is the purpose of the AppRegistry?

Basic

AppRegistry is the entry point to run a React Native application. It provides the registerComponent method used to register the root component of the application. This registration tells React Native which component to render when the application starts, similar to ReactDOM.render in web applications.

4. What is the difference between Expo and React Native CLI?

Basic

Expo provides a managed workflow with pre-built components and services, making it easier to start but with limited native module access. React Native CLI offers a bare workflow with full native code access but requires more setup and native development knowledge.

5. What is the Metro bundler and its role?

Basic

Metro is React Native's JavaScript bundler that combines all JavaScript code and dependencies into a single file. It handles transpilation, asset management, and provides hot reloading during development. It's optimized specifically for React Native's mobile environment needs.

6. How does React Native handle debugging?

Basic

React Native offers multiple debugging options: Chrome Developer Tools for JavaScript debugging, React Developer Tools for component inspection, built-in Debug menu on devices, and console logging. It also supports remote debugging and various third-party debugging tools.

7. What is the purpose of package.json in React Native?

Basic

package.json manages project dependencies, scripts, and configuration. It lists all npm packages required by the project, defines scripts for development and building, and contains metadata about the project including name, version, and license information.

8. What are the main threads in a React Native application?

Basic

React Native runs on three main threads: 1) Main Thread (Native UI), 2) JavaScript Thread (JS execution), and 3) Shadow Thread (layout calculations). These threads work together through the bridge to create the native application experience.

9. What is the role of babel.config.js in React Native?

Basic

babel.config.js configures Babel transpilation settings for the project. It defines how modern JavaScript features are converted to compatible code, handles JSX transformation, and can include various plugins and presets for additional functionality.

10. What is Hot Reloading and how does it differ from Live Reloading?

Basic

Hot Reloading updates only the changed components while maintaining the app's state. Live Reloading refreshes the entire app and resets state when code changes. Hot Reloading is more efficient during development as it preserves the development flow.

11. What is the React Native bridge and how does it work?

Moderate

The bridge is the communication layer between JavaScript and native code. It serializes data and handles asynchronous communication between JS and native threads. All native module calls and UI updates pass through the bridge, which can impact performance with heavy data transfers.

12. How does React Native handle platform-specific code?

Moderate

React Native provides Platform.select(), platform-specific file extensions (.ios.js/.android.js), Platform.OS checks, and platform-specific components. These methods allow writing platform-specific logic while maintaining a shared codebase.

13. What are native modules and when should you use them?

Moderate

Native modules expose platform-specific APIs to JavaScript through the bridge. They're used when requiring direct access to platform APIs, implementing performance-critical features, or integrating third-party SDKs that don't have React Native implementations.

14. What is the role of the Shadow Thread in React Native?

Moderate

The Shadow Thread handles layout calculations using Yoga (Facebook's cross-platform layout engine). It processes flex layouts and converts them to native layouts, running separately from the main thread to ensure smooth UI performance.

15. How does React Native handle JavaScript engines across platforms?

Moderate

iOS uses JavaScriptCore (JSC) by default, while Android can use either JSC or Hermes. Hermes is Facebook's custom JS engine optimized for React Native, offering better performance, reduced memory usage, and faster startup times.

16. What is the purpose of linking in React Native?

Moderate

Linking handles deep linking and URL scheme integration in React Native apps. It provides methods to open external links and handle incoming deep links, enabling integration with other apps and web content.

17. How does React Native handle app permissions?

Moderate

React Native provides APIs to request and check platform permissions (camera, location, etc.). These are handled through native modules and require configuration in platform-specific files (AndroidManifest.xml, Info.plist).

18. What is the role of the Metro configuration file?

Moderate

metro.config.js customizes the Metro bundler's behavior, including module resolution, asset handling, and transformation settings. It can be modified to support different file types, customize bundling, and optimize build performance.

19. How does React Native handle assets and resources?

Moderate

Assets are handled through the Metro bundler, which can process images, fonts, and other resources. Platform-specific asset selection is supported through asset suffixes, and the require syntax is used for static asset references.

20. What is the New Architecture in React Native?

Advanced

The New Architecture introduces Fabric (new rendering system) and TurboModules (improved native modules). It reduces bridge overhead, improves performance, and enables better native integration through codegen and static typing.

21. How does the Fabric rendering system work?

Advanced

Fabric is a C++ rendering system that enables synchronous operations between JS and native code. It introduces a new threading model, improves layout performance, and enables concurrent rendering features.

22. What are TurboModules and how do they improve performance?

Advanced

TurboModules provide direct JS to native communication without serialization overhead. They use codegen to create type-safe interfaces, lazy load modules, and enable better memory management compared to traditional native modules.

23. How does React Native handle memory management?

Advanced

React Native manages memory through automatic garbage collection in JS and ARC/GC in native code. Understanding the bridge's role in memory usage, implementing proper cleanup in components, and monitoring memory leaks are crucial.

24. What is the role of JSI (JavaScript Interface) in React Native?

Advanced

JSI enables direct communication between JavaScript and native code without going through the bridge. It provides a way to hold native references in JavaScript and enables synchronous native method calls.

25. How does React Native handle native crash reporting?

Advanced

Native crashes are handled through platform-specific crash reporting tools and services. Integration requires native module setup, symbolication for JavaScript stack traces, and proper error boundary implementation.

26. What are the considerations for implementing security in React Native?

Advanced

Security involves handling data encryption, secure storage, certificate pinning, code obfuscation, and protecting against common mobile vulnerabilities. Platform-specific security features must be properly implemented.

27. How does React Native handle app initialization and loading?

Advanced

App initialization involves native bootstrap, JS engine initialization, bundle loading, and component mounting. Understanding this process is crucial for optimizing startup time and implementing splash screens.

Fundamentals & Core Concepts Interview Questions Faq

What types of interview questions are available?

Explore a wide range of interview questions for freshers and professionals, covering technical, business, HR, and management skills, designed to help you succeed in your job interview.

Are these questions suitable for beginners?

Yes, the questions include beginner-friendly content for freshers, alongside advanced topics for experienced professionals, catering to all career levels.

How can I prepare for technical interviews?

Access categorized technical questions with detailed answers, covering coding, algorithms, and system design to boost your preparation.

Are there resources for business and HR interviews?

Find tailored questions for business roles (e.g., finance, marketing) and HR roles (e.g., recruitment, leadership), perfect for diverse career paths.

Can I prepare for specific roles like consulting or management?

Yes, the platform offers role-specific questions, including case studies for consulting and strategic questions for management positions.

How often are the interview questions updated?

Questions are regularly updated to align with current industry trends and hiring practices, ensuring relevance.

Are there free resources for interview preparation?

Free access is available to a variety of questions, with optional premium resources for deeper insights.

How does this platform help with interview success?

Get expert-crafted questions, detailed answers, and tips, organized by category, to build confidence and perform effectively in interviews.