javascript no es vietnam
DESCRIPTION
Estamos demasiado acostumbrados a que como javascript tiene el nombre script, podemos programar como y donde nos parezca. Pero eso ha cambiado. Hoy en día js es una compleja plataforma de programación de clientes ricos, válida para móviles, tablets y todos los ordenadores de escritorio. Así que ha llegado la hora de empezar a programar javascript con calidad.TRANSCRIPT
![Page 1: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/1.jpg)
Javascript no es Vietnam
Alex Casquete@acasquete
Fernando Escolar@fernandoescolar
![Page 2: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/2.jpg)
www.pasiona.com(+34) 669 333 [email protected]
@pasiona BarcelonaPujades 350, 10ª planta
08019 · Barcelona
BilbaoGran Vía 19-21, 2ª planta
48008 · Bilbao
Londres1 Northumberland Avenue
London · WC2N 5BW
MadridPinar 5,
28006 · Madrid
![Page 3: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/3.jpg)
Conocimientoadquirido a través de la realización de proyectos, formación e innovación tecnológica
Innovaciónligada a la mejora continua y basadaen las nuevas oportunidades tecnológicas
Tecnologíasoluciones a cada una de las necesidadesempresariales que se platean en cada ámbito
Valores humanosguía de lo que hacemos y pretendemosque nos enseña y nos conduce día a día
Pasiónsomos grandes entusiastas de todo aquello que creamos y vemos crecer
Experienciao la garantía de la habilidad derivada de años de vivencias y observación
Microsoftsocio 100% alineado partner 100% especializado
Desarrollocapacidad para realizar proyectos deámbito tecnológico con un fin de mejora
Especializaciónofrecemos soluciones a medida con las mejores herramientas tecnológicas
Qué es
![Page 4: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/4.jpg)
SocialMedia
Servicios profesionales
Consultoría Proyectos
Innovación Azure
Formación
Auditoría
Servicios
![Page 5: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/5.jpg)
![Page 6: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/6.jpg)
JavaScript…
![Page 7: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/7.jpg)
me encanta el olor a javascript por la mañana
![Page 8: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/8.jpg)
![Page 9: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/9.jpg)
estoy listo para programar sin clases
![Page 10: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/10.jpg)
¿sabes que son los patrones, recluta?
![Page 11: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/11.jpg)
¡¡¡eso me suena!!!
![Page 12: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/12.jpg)
Strategy Pattern
![Page 13: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/13.jpg)
![Page 14: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/14.jpg)
function HtmlStyler() { this.setStyle = function (input) { var result = input; for (var key in this.strategies) { var strategy = this.strategies[key]; if (strategy.setStyle) result = strategy.setStyle(result); else throw "Invalid strategy"; } return result; };} HtmlStyler.prototype.strategies = { };HtmlStyler.prototype.strategies.boldStyler = { setStyle: function(input) { return '<b>' + input + '</b>'; },}; HtmlStyler.prototype.strategies.italicStyler = { setStyle: function (input) { return '<i>' + input + '</i>'; },};
![Page 15: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/15.jpg)
Module Pattern
![Page 16: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/16.jpg)
var basketModule = (function() {
var basket = []; //private
return { //exposed to public
addItem: function(values) {
basket.push(values);
},
getItemCount: function() {
return basket.length;
},
getTotal: function(){
var q = this.getItemCount(),p=0;
while(q--){
p+= basket[q].price;
}
return p;
}
}
}());
![Page 17: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/17.jpg)
Façade Pattern
![Page 18: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/18.jpg)
var module = (function() { var _private = { i:5, get : function() { console.log('current value:' + this.i); }, set : function( val ) { this.i = val; }, run : function() { console.log('running'); }, jump: function(){ console.log('jumping'); } }; return { facade : function( args ) { _private.set(args.val); _private.get(); if ( args.run ) { _private.run(); } } }}());
module.facade({run: true, val:10});
//devuelve ‘current value: 10, running’
![Page 19: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/19.jpg)
Mediator Pattern
![Page 20: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/20.jpg)
![Page 21: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/21.jpg)
var mediator = (function() { var handlers = {}; function register(handler, fn) { if (!handlers[handler]) handlers[handler] = []; handlers[handler].push({ context: this, callback: fn }); } function notify(handler) { if (!handlers[handler]) return false; var args = Array.prototype.slice.call(arguments, 1); for (var i = 0, l = handlers[handler].length; i < l; i++) { var subscription = handlers[handler][i]; subscription.callback.apply(subscription.context, args); } } return { register: register, notify: notify };}());
![Page 22: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/22.jpg)
las pruebas nos aportan calidad
![Page 23: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/23.jpg)
![Page 24: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/24.jpg)
![Page 25: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/25.jpg)
@acasquete
@fernandoescolar
![Page 26: Javascript no es vietnam](https://reader035.vdocument.in/reader035/viewer/2022062704/55618aecd8b42ae27d8b4ad0/html5/thumbnails/26.jpg)
Muchas gracias