SlideShare uma empresa Scribd logo
1 de 89
Baixar para ler offline
how many libs/frameworks we see
everyday in JS world?
you need to know which
technology to choose
and when to use
the choice should be
based on the solution
for the problem
user
interfaceUI[ ]
the user interface
(UI) is everything
designed into an
information device
with which a human
being may interact
http://bit.ly/1N56fhw
A Javascript library for
building user interfaces
FRAMEWORK LIBRARY
A tool that solves a
specific thing
A set of tools that solve
a lot of things
WhatproblemReactsolve?
Building applications with
data that changesovertime
React has no…
• Controllers
• Models
• Collections
• Templates
• Directives
• Two way data binding
Everything is a
component!
whouses?


https://github.com/facebook/react/wiki/Sites-Using-React

whytouseit?
why to use it…
• Remove logic of HTML
• No more templates
• SEO Friendly (when rendered on server)
• Component-driven development
• Reusable and interactive components
• UI componentized is the future
• It’s fast!
11/2015
features
CORE
components
Thinking
in
FilterableProductTable:
contains the entirety of the
example
SearchBar: receives all user
input
ProductTable: displays and
filters the data collection
based on user input
ProductCategoryRow:
displays a heading for each
category
ProductRow: displays a row
for each product
App
HeaderCounter
ButtonLike
import React from 'react'
export default class App extends React.Component {
render() {
// ...
}
}
app.js
jsx
import React from 'react'
export default class App extends React.Component {
render() {
return (
<div>
<header>
<p>React Example</p>
</header>
<div className="counter">
<p>Likes: 0</p>
</div>
<div className="button-like-container">
<button className="bt">Like</button>
</div>
</div>
)
}
}
app.js
return React.createElement(
'div',
null,
React.createElement(
'header',
null,
React.createElement(
'p',
null,
'React Example'
)
),
React.createElement(
'div',
{ className: 'counter' },
React.createElement(
'p',
null,
'Likes: 0'
)
),
React.createElement(
'div',
{ className: 'button-like-container' },
React.createElement(
'button',
{ className: 'bt' },
'Like'
)
)
)
return (
<div>
<header>
<p>React Example</p>
</header>
<div className="counter">
<p>Likes: 0</p>
</div>
<div className="button-like-container">
<button className="bt">Like</button>
</div>
</div>
)
import React from ‘react’
import Header from './header'
import Counter from './counter'
import ButtonLike from './buttonLike'
export default class App extends React.Component {
render() {
return (
<div>
<Header />
<Counter />
<ButtonLike />
</div>
)
}
}
app.js
component lifecycle
Mounting Updating Unmounting
componentWillMount
componentDidMount
componentWillReceiveProps
shouldComponentUpdate
componentWillUpdate
componentDidUpdate
componentWillUnmount
LifecycleMethods


https://facebook.github.io/react/docs/component-specs.html

props & state
data transfer between
components
props
export default class Form extends React.Component {
render() {
return (
<form method="post">
<Input />
</form>
)
}
}
export default class Input extends React.Component {
render() {
return (
<div>
<label>Texto</label>
<input />
</div>
)
}
}
<Input /> component
without props
export default class Input extends React.Component {
render() {
return (
<div>
<label>{this.props.label}</label>
<input name={this.props.name} type={this.props.type} />
</div>
)
}
}
export default class Form extends React.Component {
render() {
return (
<form method="post">
<Input type="text" name="name" label="Name:" />
</form>
)
}
}
get
set
SpreadAttributes


https://facebook.github.io/react/docs/jsx-spread.html

export default class Form extends React.Component {
render() {
return (
<form method="post">
<Input type="text" name="name" />
</form>
)
}
}
export class Input extends React.Component {
render() {
return (
<div>
<input {...this.props} />
</div>
)
}
}
export default class Form extends React.Component {
render() {
return (
<form method="post">
<Input type="text" name="name" />
</form>
)
}
}
export class Input extends React.Component {
render() {
return (
<div>
<input {...this.props} />
</div>
)
}
}
import React, { PropTypes } from 'react'
const propTypes = {
likes: PropTypes.number.isRequired
}
const defaultProps = {
likes: 0
}
export default class Counter extends React.Component {
render() {
return (
<div className="counter">
<p>Likes: {this.props.likes}</p>
</div>
)
}
}
Counter.propTypes = propTypes
Counter.defaultProps = defaultProps
counter.js
import React, { PropTypes } from 'react'
const propTypes = {
likes: PropTypes.number.isRequired
}
const defaultProps = {
likes: 0
}
export default class Counter extends React.Component {
render() {
return (
<div className="counter">
<p>Likes: {this.props.likes}</p>
</div>
)
}
}
Counter.propTypes = propTypes
Counter.defaultProps = defaultProps
counter.js
initial value
import React, { PropTypes } from 'react'
const propTypes = {
likes: PropTypes.number.isRequired
}
const defaultProps = {
likes: 0
}
export default class Counter extends React.Component {
render() {
return (
<div className="counter">
<p>Likes: {this.props.likes}</p>
</div>
)
}
}
Counter.propTypes = propTypes
Counter.defaultProps = defaultProps
counter.js
import React, { PropTypes } from 'react'
const propTypes = {
likes: PropTypes.number.isRequired
}
const defaultProps = {
likes: 0
}
export default class Counter extends React.Component {
render() {
return (
<div className="counter">
<p>Likes: {this.props.likes}</p>
</div>
)
}
}
Counter.propTypes = propTypes
Counter.defaultProps = defaultProps
counter.js
if is requiredtypename


https://facebook.github.io/react/docs/reusable-components.html#prop-validation

state
import React from 'react'
import Header from './header'
import Counter from './counter'
import ButtonLike from './buttonLike'
export default class App extends React.Component {
constructor(props) {
super(props)
this.state = {
likes: 0
}
this.like = this.like.bind(this)
}
like() {
this.setState({
likes: this.state.likes + 1
})
}
render() {
return (
<div>
<Header />
<div className="content">
<Counter likes={this.state.likes} />
<ButtonLike onClick={this.like} />
</div>
</div>
)
}
}
app.js
export default class App extends React.Component {
constructor(props) {
super(props)
this.state = {
likes: 0
}
this.like = this.like.bind(this)
}
like() {
this.setState({
likes: this.state.likes + 1
})
}
render() {
return (
<div>
<Header />
<div className="content">
<Counter likes={this.state.likes} />
<ButtonLike onClick={this.like} />
</div>
</div>
)
}
}
app.js
initial state
set the state incrementing likes
pass the state as a prop (reactive)
pass a callback to set the new state
props state
mutable
managed only in own
component (private)
re-render on each change
immutable
pass to child within render
pass parent callbacks
unidirectional data flow
component
child
child
component
child child
inverse data flow
component
child
child
import React from 'react'
import Header from './header'
import Counter from './counter'
import ButtonLike from './buttonLike'
export default class App extends React.Component {
constructor(props) {
super(props)
this.state = {
likes: 0
}
this.like = this.like.bind(this)
}
like() {
this.setState({
likes: this.state.likes + 1
})
}
render() {
return (
<div>
<Header />
<div className="content">
<Counter likes={this.state.likes} />
<ButtonLike onClick={this.like} />
</div>
</div>
)
}
}
app.js buttonLike.js
import React from 'react'
export default class ButtonLike extends React.Component {
render() {
return (
<div className="button-like-container">
<button
className="bt"
onClick={this.props.onClick}>
Like
<button>
</div>
)
}
}
How about other
communication forms?
• any to any
• siblings
• child to parent without callback functions
…


http://facebook.github.io/flux/



http://bit.ly/1lDY8MG

virtual dom
WhatisDOM?
• Document Object Model
• It defines the logical structure of documents and the way a
document is accessed and manipulated.
• DOM API is almost cross-platform and cross-browser
• Inspect tool
DOMProblem
It’s slow! It’s was never optimized
for creating dynamic UI
VirtualDOM
• Inspired by the inner workings of React by facebook
• Representation of the DOM using javascript in-memory
• Algorithm to identify changes
• Computes minimal DOM mutations
• Create a queue with all mutations
• Executes all updates without recreating all of the DOM nodes
REACT
DOM
VDOM is really fast!
performance


https://facebook.github.io/react/docs/perf.html

TOOLS


http://airbnb.io/enzyme/



https://facebook.github.io/jest/docs/getting-started.html#content



https://webpack.github.io/



http://browserify.org/



https://github.com/facebook/react/wiki/Complementary-Tools



https://facebook.github.io/react-native/



https://github.com/ptmt/react-native-desktop

moreabout
Where I can study react?
Official React Docs
https://facebook.github.io/react/docs/getting-started.html
News
https://twitter.com/reactjs
Airbnb React/JSX Style Guide
https://github.com/airbnb/javascript/tree/master/react
https://twitter.com/ReactJS_News


https://github.com/andersonaguiar/react-webpack-example

considerations
THANKS!
github.com/andersonaguiar
twitter.com/andersonaguiar
andersonaguiar.web@gmail.com

Mais conteúdo relacionado

Mais procurados

Dao pattern
Dao patternDao pattern
Dao patternciriako
 
Adding a modern twist to legacy web applications
Adding a modern twist to legacy web applicationsAdding a modern twist to legacy web applications
Adding a modern twist to legacy web applicationsJeff Durta
 
Integrating Plone with E-Commerce and Relationship Management: A Case Study i...
Integrating Plone with E-Commerce and Relationship Management: A Case Study i...Integrating Plone with E-Commerce and Relationship Management: A Case Study i...
Integrating Plone with E-Commerce and Relationship Management: A Case Study i...David Glick
 
Jdbc example program with access and MySql
Jdbc example program with access and MySqlJdbc example program with access and MySql
Jdbc example program with access and MySqlkamal kotecha
 
Java Database Connectivity (JDBC)
Java Database Connectivity (JDBC)Java Database Connectivity (JDBC)
Java Database Connectivity (JDBC)Pooja Talreja
 
Javascript Design Patterns
Javascript Design PatternsJavascript Design Patterns
Javascript Design PatternsLilia Sfaxi
 
Тарас Олексин - Sculpt! Your! Tests!
Тарас Олексин  - Sculpt! Your! Tests!Тарас Олексин  - Sculpt! Your! Tests!
Тарас Олексин - Sculpt! Your! Tests!DataArt
 
Android Architecture Components - Guy Bar on, Vonage
Android Architecture Components - Guy Bar on, VonageAndroid Architecture Components - Guy Bar on, Vonage
Android Architecture Components - Guy Bar on, VonageDroidConTLV
 
Enterprise Spring
Enterprise SpringEnterprise Spring
Enterprise SpringEmprovise
 
Тестирование Magento с использованием Selenium
Тестирование Magento с использованием SeleniumТестирование Magento с использованием Selenium
Тестирование Magento с использованием SeleniumMagecom Ukraine
 
Database Programming
Database ProgrammingDatabase Programming
Database ProgrammingHenry Osborne
 
iOS UI Testing in Xcode
iOS UI Testing in XcodeiOS UI Testing in Xcode
iOS UI Testing in XcodeJz Chang
 
MVC & SQL_In_1_Hour
MVC & SQL_In_1_HourMVC & SQL_In_1_Hour
MVC & SQL_In_1_HourDilip Patel
 
JDBC Java Database Connectivity
JDBC Java Database ConnectivityJDBC Java Database Connectivity
JDBC Java Database ConnectivityRanjan Kumar
 

Mais procurados (20)

Database Access With JDBC
Database Access With JDBCDatabase Access With JDBC
Database Access With JDBC
 
Dao pattern
Dao patternDao pattern
Dao pattern
 
Adding a modern twist to legacy web applications
Adding a modern twist to legacy web applicationsAdding a modern twist to legacy web applications
Adding a modern twist to legacy web applications
 
Integrating Plone with E-Commerce and Relationship Management: A Case Study i...
Integrating Plone with E-Commerce and Relationship Management: A Case Study i...Integrating Plone with E-Commerce and Relationship Management: A Case Study i...
Integrating Plone with E-Commerce and Relationship Management: A Case Study i...
 
Jdbc example program with access and MySql
Jdbc example program with access and MySqlJdbc example program with access and MySql
Jdbc example program with access and MySql
 
Java Database Connectivity (JDBC)
Java Database Connectivity (JDBC)Java Database Connectivity (JDBC)
Java Database Connectivity (JDBC)
 
Spring Core
Spring CoreSpring Core
Spring Core
 
Intro react js
Intro react jsIntro react js
Intro react js
 
Jdbc ppt
Jdbc pptJdbc ppt
Jdbc ppt
 
Javascript Design Patterns
Javascript Design PatternsJavascript Design Patterns
Javascript Design Patterns
 
Тарас Олексин - Sculpt! Your! Tests!
Тарас Олексин  - Sculpt! Your! Tests!Тарас Олексин  - Sculpt! Your! Tests!
Тарас Олексин - Sculpt! Your! Tests!
 
Android Architecture Components - Guy Bar on, Vonage
Android Architecture Components - Guy Bar on, VonageAndroid Architecture Components - Guy Bar on, Vonage
Android Architecture Components - Guy Bar on, Vonage
 
Enterprise Spring
Enterprise SpringEnterprise Spring
Enterprise Spring
 
Тестирование Magento с использованием Selenium
Тестирование Magento с использованием SeleniumТестирование Magento с использованием Selenium
Тестирование Magento с использованием Selenium
 
Jdbc
JdbcJdbc
Jdbc
 
Database Programming
Database ProgrammingDatabase Programming
Database Programming
 
iOS UI Testing in Xcode
iOS UI Testing in XcodeiOS UI Testing in Xcode
iOS UI Testing in Xcode
 
MVC & SQL_In_1_Hour
MVC & SQL_In_1_HourMVC & SQL_In_1_Hour
MVC & SQL_In_1_Hour
 
JDBC – Java Database Connectivity
JDBC – Java Database ConnectivityJDBC – Java Database Connectivity
JDBC – Java Database Connectivity
 
JDBC Java Database Connectivity
JDBC Java Database ConnectivityJDBC Java Database Connectivity
JDBC Java Database Connectivity
 

Semelhante a React.js: You deserve to know about it

React 16: new features and beyond
React 16: new features and beyondReact 16: new features and beyond
React 16: new features and beyondArtjoker
 
Enhance react app with patterns - part 1: higher order component
Enhance react app with patterns - part 1: higher order componentEnhance react app with patterns - part 1: higher order component
Enhance react app with patterns - part 1: higher order componentYao Nien Chung
 
React & The Art of Managing Complexity
React &  The Art of Managing ComplexityReact &  The Art of Managing Complexity
React & The Art of Managing ComplexityRyan Anklam
 
Dive into React Performance
Dive into React PerformanceDive into React Performance
Dive into React PerformanceChing Ting Wu
 
React & Redux for noobs
React & Redux for noobsReact & Redux for noobs
React & Redux for noobs[T]echdencias
 
Connect.js - Exploring React.Native
Connect.js - Exploring React.NativeConnect.js - Exploring React.Native
Connect.js - Exploring React.Nativejoshcjensen
 
A full introductory guide to React
A full introductory guide to ReactA full introductory guide to React
A full introductory guide to ReactJean Carlo Emer
 
[Final] ReactJS presentation
[Final] ReactJS presentation[Final] ReactJS presentation
[Final] ReactJS presentation洪 鹏发
 
Introduction to React for Frontend Developers
Introduction to React for Frontend DevelopersIntroduction to React for Frontend Developers
Introduction to React for Frontend DevelopersSergio Nakamura
 
Advanced React Component Patterns - ReactNext 2018
Advanced React Component Patterns - ReactNext 2018Advanced React Component Patterns - ReactNext 2018
Advanced React Component Patterns - ReactNext 2018Robert Herbst
 
OttawaJS - React
OttawaJS - ReactOttawaJS - React
OttawaJS - Reactrbl002
 
Building user interface with react
Building user interface with reactBuilding user interface with react
Building user interface with reactAmit Thakkar
 
Fundamental concepts of react js
Fundamental concepts of react jsFundamental concepts of react js
Fundamental concepts of react jsStephieJohn
 
Introduction to React and MobX
Introduction to React and MobXIntroduction to React and MobX
Introduction to React and MobXAnjali Chawla
 
Introduction to React JS for beginners
Introduction to React JS for beginners Introduction to React JS for beginners
Introduction to React JS for beginners Varun Raj
 

Semelhante a React.js: You deserve to know about it (20)

React 16: new features and beyond
React 16: new features and beyondReact 16: new features and beyond
React 16: new features and beyond
 
Enhance react app with patterns - part 1: higher order component
Enhance react app with patterns - part 1: higher order componentEnhance react app with patterns - part 1: higher order component
Enhance react app with patterns - part 1: higher order component
 
React js
React jsReact js
React js
 
React & The Art of Managing Complexity
React &  The Art of Managing ComplexityReact &  The Art of Managing Complexity
React & The Art of Managing Complexity
 
Dive into React Performance
Dive into React PerformanceDive into React Performance
Dive into React Performance
 
React outbox
React outboxReact outbox
React outbox
 
React & Redux for noobs
React & Redux for noobsReact & Redux for noobs
React & Redux for noobs
 
ReactJS
ReactJSReactJS
ReactJS
 
Connect.js - Exploring React.Native
Connect.js - Exploring React.NativeConnect.js - Exploring React.Native
Connect.js - Exploring React.Native
 
A full introductory guide to React
A full introductory guide to ReactA full introductory guide to React
A full introductory guide to React
 
[Final] ReactJS presentation
[Final] ReactJS presentation[Final] ReactJS presentation
[Final] ReactJS presentation
 
Introduction to React for Frontend Developers
Introduction to React for Frontend DevelopersIntroduction to React for Frontend Developers
Introduction to React for Frontend Developers
 
Advanced React Component Patterns - ReactNext 2018
Advanced React Component Patterns - ReactNext 2018Advanced React Component Patterns - ReactNext 2018
Advanced React Component Patterns - ReactNext 2018
 
OttawaJS - React
OttawaJS - ReactOttawaJS - React
OttawaJS - React
 
Angular2 + rxjs
Angular2 + rxjsAngular2 + rxjs
Angular2 + rxjs
 
Building user interface with react
Building user interface with reactBuilding user interface with react
Building user interface with react
 
Fundamental concepts of react js
Fundamental concepts of react jsFundamental concepts of react js
Fundamental concepts of react js
 
Let's react - Meetup
Let's react - MeetupLet's react - Meetup
Let's react - Meetup
 
Introduction to React and MobX
Introduction to React and MobXIntroduction to React and MobX
Introduction to React and MobX
 
Introduction to React JS for beginners
Introduction to React JS for beginners Introduction to React JS for beginners
Introduction to React JS for beginners
 

Último

How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 

Último (20)

How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 

React.js: You deserve to know about it