reading-notes

React Native

Name three Core Components of React Native and describe what they do.

The View component is a fundamental building block in React Native for creating user interfaces. The Text component is used for displaying text in React Native applications. The Image component in React Native is used for displaying images within your application.

What problem does React Native solve (why call it native)?

React Native solves the problem of developing mobile applications for multiple platforms (iOS and Android) using a single codebase. The term “native” in React Native refers to the fact that it allows developers to build mobile apps that look and feel like native apps, meaning they have the same performance, behavior, and user experience as apps built with platform-specific technologies like Java for Android or Objective-C/Swift for iOS.

What are the building blocks of a React Native app? How does that compare to a React app?

Components are the fundamental building blocks in both React and React Native. JSX is a syntax extension used in both React and React Native to define the structure and appearance of components. Props are used to pass data and configuration to components. State represents the data that can change over time within a component. While the building blocks of React Native are similar to React, the key distinction lies in the use of native components and access to native APIs. React Native leverages native UI components and APIs to provide a more native-like experience, allowing developers to build mobile apps that look and perform similarly to apps built with platform-specific technologies. React, on the other hand, focuses on building web-based user interfaces using web components and APIs.

What solution does expo provide?

Expo provides a comprehensive development environment that eliminates the need for complex native setup and configuration. Expo enables you to write a single codebase for your React Native app that works across both iOS and Android platforms. Expo comes with a wide range of pre-built components and APIs that you can use in your React Native app.

Expo tries to manage as much of the complexity of building apps as possible, which is why we call it the __ workflow.

Managed

What is the difference between React Native and Expo?

React Native is a framework for building mobile applications using JavaScript and React. It provides a set of core components and APIs that allow developers to build native mobile apps for iOS and Android platforms. React Native requires developers to set up their own development environment, including tools like Node.js, Android Studio, and Xcode, and handle tasks like building and deploying the app. xpo, on the other hand, is a set of tools and services built around React Native that aims to simplify the development process. It provides an additional layer of abstraction on top of React Native, offering a more streamlined and beginner-friendly experience. Expo includes a CLI (Command Line Interface) that allows developers to create, build, and deploy React Native projects without the need for complex setup or configuration.

Checkout this tool. What does snack allow you to do?

It allows you to write, run, and preview React Native code directly in your web browser. With Snack, you can quickly prototype, experiment, and share React Native apps without the need for complex setup or installation.

What does “eject” mean within the context of Expo?

the process of converting an Expo project into a standard React Native project.

When should you not eject?

If your app doesn’t require extensive customization or access to low-level native code, and you prefer a streamlined development process with quick iterations, it’s generally recommended to stick with the Expo managed workflow. If your app relies mostly on JavaScript libraries and doesn’t heavily depend on native modules or third-party libraries that require native linking, there’s no immediate need to eject.

Why might you choose to eject?

If your app requires extensive customization beyond what is provided by the Expo managed workflow, ejecting allows you to have full control over the native code. If your app relies on third-party libraries or native modules that are not supported by Expo’s managed workflow, ejecting allows you to integrate those dependencies into your project.

Looking ahead at this module’s course schedule, What do you look forward to learning?

prepping for the mock interview

What are your learning goals after reading and reviewing the class README?

Expo development environment