Main Flashcards

1
Q

RN has how many main threads?

A

Two?
JavaScript business logic
UI thread on native device
bridge (is this a thread)?

REVISIT

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

List the main three RN threads.

A
UI thread
JavaScript thread (the business logic)
the bridge (communication between UI & JS threads)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

RN is ____ - threaded.

A

single

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

RN suffers in performance in apps that need to run ____ features ____ .

A

multiple

simultaneously

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

In RN apps, performance issues could arise since the single-threaded nature of it dictates that components have to ____ when another component is being rendered.

A

wait

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

The InteractionManger is used to prevent what from happening?

A

The UI thread dropping frames

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

The FlatList api ____ list view performance.

A

optimizes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

React Native alternatives like Cordova run a single-page app inside of a ____ , whereas React Native uses ____ .

A

WebView (the mobile browser engine)

native UI modules

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Three major differences from RN vs React for web:

A

RN doesn’t have HTML,
doesn’t have CSS,
routing is handled differently
JS runs on JavaScriptCore, instead of V8 engine

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

True or False: RN uses babel

A

true

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

RN uses ____ as its JavaScript enginel

A

JavaScriptCore

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Name the three most common RN UI modules.

A

Image, Text, View

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is one method to use from the FlatList api that lets you optimize list performance if you know list item height ahead of time?

A

getItemLayout()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is the RN equivalent of the React for web key prop that’s used for list items?

A

keyExtractor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What UI module do you use to get the height and width of the app window?

A

Dimensions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What UI module do you use to link to external sources from within an app?

A

Linking

17
Q

If you wanted to add an infinite scrolling ActivityIndicator to the bottom of a FlatList, what component prop would you put that inside of?

A

ListFooterComponent

18
Q

Where do performance bottlenecks occur in React Native apps?

A

the bridge between the JS engine and the native UI thread

19
Q

The bridge ____ data before sending it to the native UI thread.

A

serializes

20
Q

FlatList optimizes list performance by only rendering ____ , and un-mounting ____ .

A

rows that are visible on the screen

rows that have been scrolled past

21
Q

Metro is the ____ ____ for React Native.

A

JavaScript bundler

22
Q

There are two main ways to scaffold a RN project. What are these?

A

Expo cli and React Native cli

23
Q

Expo makes it very easy to publish ____ ____ ____ updates to your app.

A

Over The Air (OTA)

24
Q

One limitation of an Expo build (a non-bare build) is that you don’t have access to ____ ____.

A

native code

25
Q

One Expo limitation regarding API’s is that ________.

A

not all iOS and Android API’s are available

26
Q

In an Expo “bare” build, you have access to the ____ iOS and Android code.

A

native

27
Q

One downside of using Expo is that your build size may be larger than necessary due to ________.

A

All APIs being included whether they are used or not

28
Q

Expo provides two workflow options for project builds: ____ and ____.

A

managed

bare

29
Q

One downside to using Expo is that ____ ____ ____ updates are limited by ____ restrictions.

A

Over The Air

size

30
Q

The four main tools/libraries that you need to build a RN project without using Expo is:

A

Xcode, Node, Watchman, React Native CLI

31
Q

Watchman is a tool built by Facebook that does what?

A

Watches for file changes

32
Q

Cocoapods ____ ____ dependencies for Xcode projects.

A

manages libraries