aplicaciones modernas con react.js

21
Aplicaciones Modernas

Upload: octavio-luna-bernal

Post on 12-Jan-2017

535 views

Category:

Software


3 download

TRANSCRIPT

Page 1: Aplicaciones modernas con React.js

Aplicaciones Modernas

Page 2: Aplicaciones modernas con React.js

REACT.JS

Octavio Luna

@tavo_luna@Itaqua

Desarrollador, Geek, OCD y Fisico-Matemático de hobbie,

Programación Funcional y Procesos de Negocio

Page 3: Aplicaciones modernas con React.js

REACT.JS

Octavio Luna

@tavo_luna@Itaqua

Gerente de Desarrollo de SoftwareUnlimited Vacation Club by AM Resorts

(http://www.unlimitedvacationclub.com/)

Fellow Developer para NavigatorMD( http://www.navigatormd.com/)

Page 4: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

REACT.JS

Octavio Luna

@tavo_luna@Itaqua

Miembro del Tequila Valley Cancun Group (TQV)

Barcampist 2013: Scala Un lenguaje para la era del Multiprocesador(http://es.slideshare.net/octavio_luna/scala-un-lenguaje-para-multiprocesador)

Contributor to Asterisk-Java API Interface (https://github.com/asterisk-java/asterisk-java)

Page 5: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

FRAMEWORKS

Page 6: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

W T F …ramework

Page 7: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

Page 8: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

Page 9: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

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

Page 10: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

W T F

Page 11: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

WTF

HYhisramework

Page 12: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

• Es la V en un MVC• Amigable con SEO• Los componentes son el Futuro de la Red• Extremadamente eficiente (gracias al DOM

virtual)• Mucha retroalimentación al Desarrollador

Page 13: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

• La mutabilidad es la raíz de todos los Males.

• Puede colaborar con otros Frameworks y otras librerías (mientras no alteres el DOM)

• Permite migrar una aplicación existente poco a poco

• Facebook lo usa y mantiene, así que no se ira pronto.

Page 14: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

var HelloMessage = React.createClass({ render: function() { return <div>Hola {this.props.name}</div>; }});

React.render( <HelloMessage name="Octavio" />, document.getElementById('example'));

JSX

Page 15: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

var HelloMessage = React.createClass({ displayName: "HelloMessage",

render: function render() { return React.createElement( "div", null, "Hola ", this.props.name ); }});

React.render( React.createElement(HelloMessage, { name: "Octavio" }), document.getElementById('example'));

Javascript

Page 16: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

var Timer = React.createClass({ getInitialState: function() { return {secondsElapsed: 0}; }, tick: function() { this.setState({secondsElapsed: this.state.secondsElapsed + 1}); }, componentDidMount: function() { this.interval = setInterval(this.tick, 1000); }, componentWillUnmount: function() { clearInterval(this.interval); }, render: function() { return ( <div>Seconds Elapsed: {this.state.secondsElapsed}</div> ); }});

React.render(<Timer />, document.getElementById('example'));

Statefull Component

Page 17: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

Ampersand.js

Page 18: Aplicaciones modernas con React.js

Especificación del Componente

• render• getInitialState• getDefaultProps• propTypes• mixins• statics• displayName

REACT.JS

@tavo_luna@Itaqua

Page 19: Aplicaciones modernas con React.js

Ciclo de Vida del Componente

• Montaje• componentWillMount• componentDidMount

• Desmontaje• componentWillUnmount

REACT.JS

@tavo_luna@Itaqua

• Actualización• componentWillReceiveProps• shouldComponentUpdate• componentWillUpdate• componentDidUpdate

Page 20: Aplicaciones modernas con React.js

REACT.JS

@tavo_luna@Itaqua

• Es importante que elijas tu arquitectura en un inicio

• Cada vez se verán mas SPAs

Page 21: Aplicaciones modernas con React.js

GRACIAS