SlideShare a Scribd company logo
REACT NATIVE INTRO
- PhoneGap
- No DOM or WebViews or Safari
- It doesn’t replace writing Swift/Objective-C
- Not 100% cross-platform code
- Does not replace the iOS/Android UI libraries
WHAT IT’S NOT
- JSCore with a transparent bridge to native code
- JS processes the business logic and view transitions
- “Feels Native” Native code handles rendering and
animations
- Cross-platform business logic code
- Adapters make some UI code cross-platform
WHAT IS IT?
- Highest rewards is from pure functions as app state
- Most debugging is in JS but some happens in XCode
- Uses same native API but in JavaScript
- Transition from OOP to FP
- Mandatory frameworks and tooling from Facebook
- JS has issues with data types like integers
- Large React Native OSS community
CHALLENGES
INSTALL
INSTALL
INSTALL
INSTALL
INSTALL
CODE
CODE BASICS
CODE BASICS
CODE NATIVE API
CODE NATIVE API
CODE FLEX BOX
CODE COMMUNITY
@implementation RCTText
- (void)drawRect:(CGRect)rect
{
NSLayoutManager *layoutManager = [_textStorage.layoutManagers firstObject];
NSTextContainer *textContainer = [layoutManager.textContainers firstObject];
NSRange glyphRange = [layoutManager glyphRangeForTextContainer:textContainer];
CGRect textFrame = self.textFrame;
[layoutManager drawBackgroundForGlyphRange:glyphRange atPoint:textFrame.origin];
[layoutManager drawGlyphsForGlyphRange:glyphRange atPoint:textFrame.origin];
__block UIBezierPath *highlightPath = nil;
NSRange characterRange = [layoutManager characterRangeForGlyphRange:glyphRange actualGlyphRange:NULL];
[layoutManager.textStorage enumerateAttribute:RCTIsHighlightedAttributeName inRange:characterRange options:0
usingBlock:^(NSNumber *value, NSRange range, BOOL *_) {
if (!value.boolValue) {
return;
CODE CUSTOM VIEWS
WHY?
JAVASCRIPT
FP (FUNCTION PROGRAMING)
JAVASCRIPT
JAVASCRIPT
JAVASCRIPT
JAVASCRIPT
JAVASCRIPT
FP (FUNCTIONAL PROGRAMMING)
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
PURE FUNCTIONS
ƒ(d)=V
PURE VIEWS
vs
PURE VIEWS
Permutation
vs
Combination
PURE VIEWS
mandates an order of operations
vs
simple A→B transition
PURE VIEWS
PURE VIEWS
MVC applications are large complex permutations.
PURE VIEWS
How we think our apps work.
PURE VIEWS
How applications really work.
PURE VIEWS
ƒ({oauthToken: ‘abc123’,
path: ‘/checkout’
email: bobby@rga.com
cart: [
{name: ‘item1’, cost: 100},
{name: ‘item2’, cost: 999}
]}) = <h1> Check out </h1>
<h2 class=”user”> bobby@rga.com </h2>
<ol class=”cart”>
<li> item1 - $100 </li>
<li> item2 - $999 </li>
</ol>
PURE VIEWS
PURE VIEWS
PURE VIEWS
PURE VIEWS
PURE VIEWS
CLOSING THOUGHT
CLOSING THOUGHT

More Related Content

PPTX
SONY BBS - React Native
PPTX
Creating books app with react native
PDF
Getting Started with React Native (and should I use it at all?)
PDF
React native sharing
PDF
React Native in a nutshell
PDF
Experiences building apps with React Native @DomCode 2016
PDF
Intro to react native
PPTX
React Native - Unleash the power of React in your device - Eduard Tomàs - Cod...
SONY BBS - React Native
Creating books app with react native
Getting Started with React Native (and should I use it at all?)
React native sharing
React Native in a nutshell
Experiences building apps with React Native @DomCode 2016
Intro to react native
React Native - Unleash the power of React in your device - Eduard Tomàs - Cod...

What's hot (20)

PDF
Putting the Native in React Native - React Native Boston
PDF
React-Native for multi-platform mobile applications @ Codemotion Rome 2017
PDF
An iOS Developer's Perspective on React Native
PDF
Introduction to React Native & Rendering Charts / Graphs
PDF
Optimizing React Native views for pre-animation
PDF
Introduction to React Native
PDF
Introduction to React Native
PDF
What's This React Native Thing I Keep Hearing About?
PDF
React Native for multi-platform mobile applications - Matteo Manchi - Codemo...
PPTX
PDF
Contributing to open source
PDF
Experiences building apps with React Native @UtrechtJS May 2016
PPTX
React Native - Why Designers should use React native. And everyone else too.
PPTX
Introduction to React Native
PDF
Ionic framework one day training
PPTX
React Native
PDF
React native-meetup-talk
PPTX
React Native
PPTX
PDF
Going Native With React
Putting the Native in React Native - React Native Boston
React-Native for multi-platform mobile applications @ Codemotion Rome 2017
An iOS Developer's Perspective on React Native
Introduction to React Native & Rendering Charts / Graphs
Optimizing React Native views for pre-animation
Introduction to React Native
Introduction to React Native
What's This React Native Thing I Keep Hearing About?
React Native for multi-platform mobile applications - Matteo Manchi - Codemo...
Contributing to open source
Experiences building apps with React Native @UtrechtJS May 2016
React Native - Why Designers should use React native. And everyone else too.
Introduction to React Native
Ionic framework one day training
React Native
React native-meetup-talk
React Native
Going Native With React
Ad

Viewers also liked (20)

PDF
React native - What, Why, How?
PDF
A tour of React Native
PDF
React Native GUIDE
PDF
React Native Introduction: Making Real iOS and Android Mobile App By JavaScript
PPTX
React Native for ReactJS Devs
PDF
W3CTech美团react专场-React Native 初探
PPTX
Meetup React Native
PDF
React Native for Web
PDF
JavaScript, React Native and Performance at react-europe 2016
PDF
Introduzione a React Native - Alessandro Giannini
PDF
React Native Internals
PDF
Quick start with React | DreamLab Academy #2
PPTX
React Native
PDF
React Native: Developing an app similar to Uber in JavaScript
PDF
[React Native] Lecture 4: Basic Elements and UI Layout by using FlexBox
PPTX
001. Introduction about React
PPTX
Introduction to React
PPTX
React in Native Apps - Meetup React - 20150409
PPTX
007. Redux middlewares
PPTX
Introduction à spring boot
React native - What, Why, How?
A tour of React Native
React Native GUIDE
React Native Introduction: Making Real iOS and Android Mobile App By JavaScript
React Native for ReactJS Devs
W3CTech美团react专场-React Native 初探
Meetup React Native
React Native for Web
JavaScript, React Native and Performance at react-europe 2016
Introduzione a React Native - Alessandro Giannini
React Native Internals
Quick start with React | DreamLab Academy #2
React Native
React Native: Developing an app similar to Uber in JavaScript
[React Native] Lecture 4: Basic Elements and UI Layout by using FlexBox
001. Introduction about React
Introduction to React
React in Native Apps - Meetup React - 20150409
007. Redux middlewares
Introduction à spring boot
Ad

Similar to When to (use / not use) React Native. (20)

PPTX
Cross platform mobile app development tools review
PDF
The Gist of React Native
PDF
Code and Conquer with Globe Labs, October 27, 2012
PPTX
React Native - CirebonDev
PPTX
From React to React Native - Things I wish I knew when I started
PDF
HTML5 Can't Do That
PPTX
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
PPTX
Cross Platform Mobile Technologies
PPTX
Sviluppo x platform con xamarin
PDF
Tom Germeau: Mobile Apps: Finding the balance between performance and flexibi...
PDF
Intro to appcelerator
PDF
Mobile Development with PhoneGap
PPTX
Mobile Application and Developments.pptx
PDF
Introduction to React Native - Lev Vidrak, Wix
PDF
Cross-platform mobile that Works - Coobers
PDF
Philip Shurpik "Architecting React Native app"
PDF
Building Cross-Platform Mobile Apps
PDF
Optimized Cross Platform Development
PPT
Rhodes Overview
PPT
Intro to react native
Cross platform mobile app development tools review
The Gist of React Native
Code and Conquer with Globe Labs, October 27, 2012
React Native - CirebonDev
From React to React Native - Things I wish I knew when I started
HTML5 Can't Do That
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
Cross Platform Mobile Technologies
Sviluppo x platform con xamarin
Tom Germeau: Mobile Apps: Finding the balance between performance and flexibi...
Intro to appcelerator
Mobile Development with PhoneGap
Mobile Application and Developments.pptx
Introduction to React Native - Lev Vidrak, Wix
Cross-platform mobile that Works - Coobers
Philip Shurpik "Architecting React Native app"
Building Cross-Platform Mobile Apps
Optimized Cross Platform Development
Rhodes Overview
Intro to react native

Recently uploaded (20)

PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Encapsulation theory and applications.pdf
PPTX
Machine Learning_overview_presentation.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Cloud computing and distributed systems.
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
A comparative analysis of optical character recognition models for extracting...
Reach Out and Touch Someone: Haptics and Empathic Computing
Encapsulation theory and applications.pdf
Machine Learning_overview_presentation.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
sap open course for s4hana steps from ECC to s4
Chapter 3 Spatial Domain Image Processing.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Cloud computing and distributed systems.
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
The AUB Centre for AI in Media Proposal.docx
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
MIND Revenue Release Quarter 2 2025 Press Release
NewMind AI Weekly Chronicles - August'25-Week II
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf

When to (use / not use) React Native.