Powered by React
You just need to know a bit of JavaScript!
Slide 3
Slide 3 text
And here’s the summary ﹣
● What exactly are platforms?
● How does modern App Development work
● Why build a Native App
● Why you shouldn’t build a Native App
● Cross platform development tools
● A bit of Javascript
● The React Native “Platform”
● Expo
● A bit of coding
● Some discussion
We are gonna learn some stuff
Slide 4
Slide 4 text
Platforms
A platform is a group of technologies
based on which other applications are developed.
Xbox, PlayStation, Nintendo ﹣ are all platforms for developing games
Slide 5
Slide 5 text
Targeted Platforms
Almost all businesses require some form of platform
Slide 6
Slide 6 text
Desktop
Mobile
Web
Desktop Native
Universal Windows Platform
Android
iOS
Mobile Web
Slide 7
Slide 7 text
Android Platform
A few things to know
Apps are built with Java, Kotlin or C++ ﹣
Uses XML for UI Layouts ﹣
The final app is packaged as .apk or .abb ﹣
Usually distributed through Play Store ﹣
Slide 8
Slide 8 text
iOS Platform
A bunch of more things to know
Apps are built with Objective-C or Swift ﹣
Uses Interface Builder or Swift UI for Layouts ﹣
The final app is packaged as .ipa ﹣
Can only be distributed through App Store ﹣
Slide 9
Slide 9 text
Web
You might already know this
Apps are built with HTML, CSS and JavaScript ﹣
Uses Flexbox or CSS Grids for Layouts ﹣
The final app is packaged as .html, .CSS or .js ﹣
Can be distributed throughout the web ﹣
Slide 10
Slide 10 text
Cross Platform Development tools
Ionic
Flutter
React Native
Uses the webview
Uses its own rendering engine
Uses a native bridge
Slide 11
Slide 11 text
Flutter
An excellent framework if you are targeting only mobile apps!
Slide 12
Slide 12 text
Android
Text is rendered using
platform’s native
“TextView”
iOS
Text is rendered using
platform’s native
“UILabel”
What Makes React Native awesome
The Native Bridge
This will convert the Text Component into the
platform’s native text element
A React Native Text
Component
Slide 13
Slide 13 text
The Native Bridge is powerful
Since all the UI elements of React Native is defined as platform
independent terms like Text, View, ScrollView etc. The Native Bridge can be
extended to almost any platforms.
Slide 14
Slide 14 text
Twitter PWA
Built with React-Native-Web where native bridge extends React native
components to render HTML & CSS
Slide 15
Slide 15 text
React Native Windows
It is a framework which extends React Native Components to
Universal Windows Platform
Slide 16
Slide 16 text
And these usually don’t affect people who are familiar with the platform
● Complicated Setup
● Too much native code
● Lack of many inbuilt modules like Camera, Push Notifications
● Platform Specific Components
● Need a Mac for iOS Apps
There are few things in React Native that make it
difficult for new developers to learn
Slide 17
Slide 17 text
State of JS
2019
Slide 18
Slide 18 text
Meet Expo
A Framework Built on
Top of React Native
Slide 19
Slide 19 text
A few benefits ﹣
● You don’t have to know Native Development
● You don’t need to search for external libraries
● You don’t need a mac to build iOS Apps
● It can extend upto all platforms with little to no change
Expo organizes things neatly
Slide 20
Slide 20 text
Before we start...
Node VSCode Google Chrome
Yarn React Expo CLI
Slide 21
Slide 21 text
Thanks
Follow me on: @dani_akash_
daniakash.com
Slide 22
Slide 22 text
You can find the projects we did in this session here...
Github - Not Instagram - https://github.com/DaniAkash/not-instagram
Snack - Todolist App - https://snack.expo.io/@daniakash/todolist
RESOURCES