Skip to content

Latest commit

 

History

History
76 lines (45 loc) · 4.2 KB

Class-401-43.md

File metadata and controls

76 lines (45 loc) · 4.2 KB

Reading: React Native

getting started with react native

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

  • Veiw: A container that supports layout with flexbox, style, some touch handling, and accessibility controls
  • Text: Displays, styles, and nests strings of text and even handles touch events -Image: Displays different types of images

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

It is called "native" because it allows developers to write code in JavaScript and use it to create mobile apps that can run on multiple platforms, such as iOS and Android. It solves the problem of having to write separate codebases in different programming languages (Java or Kotlin for Android, Objective-C or Swift for iOS) for each platform.

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

Components. Comparing React Native to a React app, the primary difference lies in the components used and the rendering process. While both use components and JSX, React Native components render to native UI components provided by the underlying platform, whereas React components render to the browser's DOM. This difference allows React Native to achieve native-like performance and appearance on mobile devices.

Additionally, React Native has its own set of platform-specific components, APIs, and styling options to ensure the user interface follows the guidelines and conventions of each platform. In contrast, React apps focus on rendering components to the browser and rely on web-based technologies for styling, such as CSS.

expo

What solution does expo provide?

We are the home for developers building native apps across Android and iOS with JavaScript... We’re a full ecosystem of tools that help you write, build, update, submit, and monitor mobile apps.

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 the core framework that allows you to build cross-platform mobile apps using JavaScript and React. Expo, on the other hand, is a set of tools and services built on top of React Native, providing a managed workflow that abstracts away some complexities of native app development. Expo aims to simplify and accelerate the development process, while React Native offers more flexibility and customization options.

expo snack

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

Snack is an open source sandbox for expo, it lets you play around with code in the browser and see what it would look like. It kind of reminds me of Replit, with the output being the 'device screen' instead.

ejecting

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

The term "eject" was popularized by create-react-app, and it is used in Expo to describe leaving the cozy comfort of the standard Expo development environment, where you do not have to deal with build configuration or native code. When you "eject" from Expo, you have two choices:

  • Eject to bare workflow, where you jump between workflows and move into the bare workflow, where you can continue to use Expo APIs but have access and full control over your native Android and iOS projects.
  • Eject to ExpoKit, where you get the native projects along with ExpoKit. This option is deprecated and support for ExpoKit was removed after SDK 38.

When should you not eject?

  • Rapid prototyping or proof of concept
  • Limited native customizations
  • Limited timeline and/or resources
  • The Expo ecosystem provides for the needs of the app

Why might you choose to eject?

  • Advanced Native integrations
  • Complex third party library compatability
  • Custom build process/specific build requirements
  • Dev team expertise

Tutorial

react native basics

Bookmark and Review

react native

Additional Questions

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

I am excited to be able to make apps that are device responsive, also never turn down a good conversations about ethics.

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

Super excited to create a phone app!