SlideShare a Scribd company logo
1 of 32
Download to read offline
Learn Once
Write Anywhere
Hello…
Arryangga Aliev
Web Developer & Remote Worker
Types of Apps Available
on Mobile Device
Mobile Web App
• Coded in HTML5, Javascript, CSS
• Run in Browser
• Cross Platform
• No Access to Native API
• Can not run Offline
Native App
• Coded in Native Language (Java/Kotlin = Android , Swift/Obj.C = iOS)
• Use Native API, and access all functionality on the device
• Lightweight
• Best User Experience
• Not Cross Platform
• Expensive : hire separate developers for each device
Hybrid App
• Web App that is Wrapped in Native App (ie. WebView)
• Ionic, PhoneGap, Cordova
• Cross Platform
• Not Clean, Smooth as Native App
React is Javascript library for building User
Interface on Website
What is React?
What is React Native?
Framework for building Native Mobile Apps using
Javascript and React.JS Library
Cross Platform…
How React Native Works?
Normal Javascript Works
React Native
Works
Why I Use React Native?
Mobile Development is EAZYYY
Trends…
Who’s Using
React Native?
React Native Solved My
Problem
Tech :
• Laravel
• React Native
Feature :
• Prisoner Information
• Timeline Status
• Prisoner Image Gallery
• GPS Tracker
Tech :
• Laravel
• React Native
Feature :
• Gojek/Uber like Apps
• ATM/Bank/Hospital Finder
• Traffic Reports
Get Started
• Basic ES2015/ES6
• Learn React.js
• Install iOS / Android Development Tools || Expo.io
• brew install node
• brew install watchman
• npm install -g react-native-cli
• react-native init Demo
• cd Demo
• react-native run-ios
Browser DOM vs Mobile
•<View>
•<Image>
•<Text>
•<ListView>
•<div>
•<img>
•<span>,<p>
•<ul>,<ol>
<Text>Hello World…</Text>
Styling, not really CSS
ReactNative
container: {
flex: 1,
alignItems: 'center',
paddingTop: 30
}
Normal CSS
.container {
flex: 1;
align-items: center;
padding-top: 0;
}
jSX
export default class Demo extends Component {
render() {
return (
<View>
<Text>Hello, Surabaya</Text>
</View>
);
}
}
JSX is a preprocessor
step that adds XML
syntax to JavaScript.
You can definitely use
React without JSX but
JSX makes React a lot
more elegant.
Props
export default class Demo extends Component {
render() {
return (
<View>
<HelloWorld name={`Jendral`}/>
</View>
);
}
}
export default class HelloWorld extends Component {
render() {
return (
<Text>
{`this.props.name`}/>
</Text>
);
}
}
State
export default class Demo extends Component {
constructor(props) {
super(props);
this.state = { name:’World’}
}
render() {
return (
<View>
<Text/>{`this.state.name`}</Text>
<TouchableOpacity onPress={()=>{
this.setState({
name : ‘New Name’
})
}}>
<Text/>Ubah Nama</Text>
</TouchableOpacity>
</View>
);
}
}
DEMO
• Styling
• Props
• State
• Navigation
• Storage

More Related Content

What's hot

Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic Framework
Troy Miles
 

What's hot (20)

Building mobile app with Ionic Framework
Building mobile app with Ionic FrameworkBuilding mobile app with Ionic Framework
Building mobile app with Ionic Framework
 
Building Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicBuilding Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and Ionic
 
Ionic Framework
Ionic FrameworkIonic Framework
Ionic Framework
 
Developing Hybrid Applications with IONIC
Developing Hybrid Applications with IONICDeveloping Hybrid Applications with IONIC
Developing Hybrid Applications with IONIC
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic Framework
 
Ionic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile appsIonic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile apps
 
Hybrid app development with ionic
Hybrid app development with ionicHybrid app development with ionic
Hybrid app development with ionic
 
Rhodes
RhodesRhodes
Rhodes
 
SONY BBS - React Native
SONY BBS - React NativeSONY BBS - React Native
SONY BBS - React Native
 
Hybrid mobile and Ionic
Hybrid mobile and IonicHybrid mobile and Ionic
Hybrid mobile and Ionic
 
Cross-Platform Mobile Development with Ionic Framework and Angular
Cross-Platform Mobile Development with Ionic Framework and AngularCross-Platform Mobile Development with Ionic Framework and Angular
Cross-Platform Mobile Development with Ionic Framework and Angular
 
NativeScript: Cross-Platform Mobile Apps with JavaScript and Angular
NativeScript: Cross-Platform Mobile Apps with JavaScript and AngularNativeScript: Cross-Platform Mobile Apps with JavaScript and Angular
NativeScript: Cross-Platform Mobile Apps with JavaScript and Angular
 
React Native A guide for front end developers
React Native A guide for front end developersReact Native A guide for front end developers
React Native A guide for front end developers
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React Native
 
新しい技術を取り入れるための実験のやり方 〜サーバーレス・機械学習・PWAを実戦に投入するまで〜
新しい技術を取り入れるための実験のやり方 〜サーバーレス・機械学習・PWAを実戦に投入するまで〜新しい技術を取り入れるための実験のやり方 〜サーバーレス・機械学習・PWAを実戦に投入するまで〜
新しい技術を取り入れるための実験のやり方 〜サーバーレス・機械学習・PWAを実戦に投入するまで〜
 
Creating a Responsive Website From Scratch
Creating a Responsive Website From ScratchCreating a Responsive Website From Scratch
Creating a Responsive Website From Scratch
 
React Native
React NativeReact Native
React Native
 
Ionic adventures - Hybrid Mobile App Development rocks
Ionic adventures - Hybrid Mobile App Development rocksIonic adventures - Hybrid Mobile App Development rocks
Ionic adventures - Hybrid Mobile App Development rocks
 
React-Native for multi-platform mobile applications @ Codemotion Rome 2017
React-Native for multi-platform mobile applications @ Codemotion Rome 2017React-Native for multi-platform mobile applications @ Codemotion Rome 2017
React-Native for multi-platform mobile applications @ Codemotion Rome 2017
 
Mobile Applications with Angular 4 and Ionic 3
Mobile Applications with Angular 4 and Ionic 3Mobile Applications with Angular 4 and Ionic 3
Mobile Applications with Angular 4 and Ionic 3
 

Similar to React Native - DILo Surabaya

Philip Shurpik "Architecting React Native app"
Philip Shurpik "Architecting React Native app"Philip Shurpik "Architecting React Native app"
Philip Shurpik "Architecting React Native app"
Fwdays
 
Ilya Ivanov - Advanced React-Native
Ilya Ivanov - Advanced React-NativeIlya Ivanov - Advanced React-Native
Ilya Ivanov - Advanced React-Native
OdessaJS Conf
 
Hybrid Mobile Development with Apache Cordova and
Hybrid Mobile Development with Apache Cordova and Hybrid Mobile Development with Apache Cordova and
Hybrid Mobile Development with Apache Cordova and
Ryan Cuprak
 

Similar to React Native - DILo Surabaya (20)

Mobile native-hacks
Mobile native-hacksMobile native-hacks
Mobile native-hacks
 
From React to React Native - Things I wish I knew when I started
From React to React Native - Things I wish I knew when I startedFrom React to React Native - Things I wish I knew when I started
From React to React Native - Things I wish I knew when I started
 
An iOS Developer's Perspective on React Native
An iOS Developer's Perspective on React NativeAn iOS Developer's Perspective on React Native
An iOS Developer's Perspective on React Native
 
React Native
React NativeReact Native
React Native
 
Philip Shurpik "Architecting React Native app"
Philip Shurpik "Architecting React Native app"Philip Shurpik "Architecting React Native app"
Philip Shurpik "Architecting React Native app"
 
Introduction to React Native - Lev Vidrak, Wix
Introduction to React Native - Lev Vidrak, WixIntroduction to React Native - Lev Vidrak, Wix
Introduction to React Native - Lev Vidrak, Wix
 
Mobile applications in a new way with React Native
Mobile applications in a new way with React NativeMobile applications in a new way with React Native
Mobile applications in a new way with React Native
 
Mobile applications in a new way with React Native (by Eugene Zharkov) - Hack...
Mobile applications in a new way with React Native (by Eugene Zharkov) - Hack...Mobile applications in a new way with React Native (by Eugene Zharkov) - Hack...
Mobile applications in a new way with React Native (by Eugene Zharkov) - Hack...
 
Developing a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDeveloping a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&Cordova
 
Introduction to React native
Introduction to React nativeIntroduction to React native
Introduction to React native
 
Ilya Ivanov - Advanced React-Native
Ilya Ivanov - Advanced React-NativeIlya Ivanov - Advanced React-Native
Ilya Ivanov - Advanced React-Native
 
React Native: Introduction
React Native: IntroductionReact Native: Introduction
React Native: Introduction
 
Mobile Vue.js – From PWA to Native
Mobile Vue.js – From PWA to NativeMobile Vue.js – From PWA to Native
Mobile Vue.js – From PWA to Native
 
React Native
React NativeReact Native
React Native
 
Cross-Platform Development
Cross-Platform DevelopmentCross-Platform Development
Cross-Platform Development
 
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
 
Hybrid Mobile Development with Apache Cordova and
Hybrid Mobile Development with Apache Cordova and Hybrid Mobile Development with Apache Cordova and
Hybrid Mobile Development with Apache Cordova and
 
Your choices for building a mobile app in 2016
Your choices for building a mobile app in 2016Your choices for building a mobile app in 2016
Your choices for building a mobile app in 2016
 
Android - Anroid Pproject
Android - Anroid PprojectAndroid - Anroid Pproject
Android - Anroid Pproject
 
Introduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App DevelopmentIntroduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App Development
 

More from DILo Surabaya (7)

Craate Your Own PHP Package - DILo Surabaya
Craate Your Own PHP Package - DILo SurabayaCraate Your Own PHP Package - DILo Surabaya
Craate Your Own PHP Package - DILo Surabaya
 
ERP an Introduction - DILo Surabaya
ERP an Introduction - DILo SurabayaERP an Introduction - DILo Surabaya
ERP an Introduction - DILo Surabaya
 
Introduction to Polymer Project - DILo Surabaya
Introduction to Polymer Project - DILo SurabayaIntroduction to Polymer Project - DILo Surabaya
Introduction to Polymer Project - DILo Surabaya
 
Open API Secification with Swagger - DILo Surabaya
Open API Secification with Swagger - DILo SurabayaOpen API Secification with Swagger - DILo Surabaya
Open API Secification with Swagger - DILo Surabaya
 
Having Fun with Kotlin Android - DILo Surabaya
Having Fun with Kotlin Android - DILo SurabayaHaving Fun with Kotlin Android - DILo Surabaya
Having Fun with Kotlin Android - DILo Surabaya
 
Gitflow - DILo Surabaya
Gitflow - DILo SurabayaGitflow - DILo Surabaya
Gitflow - DILo Surabaya
 
Concurrent Programming in Golang - DILo Surabaya
Concurrent Programming in Golang - DILo SurabayaConcurrent Programming in Golang - DILo Surabaya
Concurrent Programming in Golang - DILo Surabaya
 

Recently uploaded

Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 

Recently uploaded (20)

Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 

React Native - DILo Surabaya

  • 3. Types of Apps Available on Mobile Device
  • 4. Mobile Web App • Coded in HTML5, Javascript, CSS • Run in Browser • Cross Platform • No Access to Native API • Can not run Offline
  • 5. Native App • Coded in Native Language (Java/Kotlin = Android , Swift/Obj.C = iOS) • Use Native API, and access all functionality on the device • Lightweight • Best User Experience • Not Cross Platform • Expensive : hire separate developers for each device
  • 6. Hybrid App • Web App that is Wrapped in Native App (ie. WebView) • Ionic, PhoneGap, Cordova • Cross Platform • Not Clean, Smooth as Native App
  • 7.
  • 8. React is Javascript library for building User Interface on Website What is React?
  • 9. What is React Native? Framework for building Native Mobile Apps using Javascript and React.JS Library
  • 14.
  • 15. Why I Use React Native?
  • 17.
  • 18.
  • 21. React Native Solved My Problem
  • 22. Tech : • Laravel • React Native Feature : • Prisoner Information • Timeline Status • Prisoner Image Gallery • GPS Tracker
  • 23.
  • 24. Tech : • Laravel • React Native Feature : • Gojek/Uber like Apps • ATM/Bank/Hospital Finder • Traffic Reports
  • 25.
  • 26. Get Started • Basic ES2015/ES6 • Learn React.js • Install iOS / Android Development Tools || Expo.io • brew install node • brew install watchman • npm install -g react-native-cli • react-native init Demo • cd Demo • react-native run-ios
  • 27. Browser DOM vs Mobile •<View> •<Image> •<Text> •<ListView> •<div> •<img> •<span>,<p> •<ul>,<ol> <Text>Hello World…</Text>
  • 28. Styling, not really CSS ReactNative container: { flex: 1, alignItems: 'center', paddingTop: 30 } Normal CSS .container { flex: 1; align-items: center; padding-top: 0; }
  • 29. jSX export default class Demo extends Component { render() { return ( <View> <Text>Hello, Surabaya</Text> </View> ); } } JSX is a preprocessor step that adds XML syntax to JavaScript. You can definitely use React without JSX but JSX makes React a lot more elegant.
  • 30. Props export default class Demo extends Component { render() { return ( <View> <HelloWorld name={`Jendral`}/> </View> ); } } export default class HelloWorld extends Component { render() { return ( <Text> {`this.props.name`}/> </Text> ); } }
  • 31. State export default class Demo extends Component { constructor(props) { super(props); this.state = { name:’World’} } render() { return ( <View> <Text/>{`this.state.name`}</Text> <TouchableOpacity onPress={()=>{ this.setState({ name : ‘New Name’ }) }}> <Text/>Ubah Nama</Text> </TouchableOpacity> </View> ); } }
  • 32. DEMO • Styling • Props • State • Navigation • Storage