#Win8JSApps | 4.- Métodos de desarrollo
-
Upload
quique-fdez-guerra -
Category
Engineering
-
view
51 -
download
2
description
Transcript of #Win8JSApps | 4.- Métodos de desarrollo
![Page 1: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/1.jpg)
Métodos dedesarrollo
Oriol Torrasuriusfurius
Quique Fdez. GuerraCKGrafico
![Page 2: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/2.jpg)
Podemos utilizar prácticamentecualquier método de desarrollo
En el taller veremos 5 métodos
WinJS y su MVC (plantillas por defecto)WAT (genera la app de tu web)Navigator.js (lo mínimo + handmade)Project Siena (haz una app con una app)Nuestro MV* (practicaremos con WinjsMVR)
Métodos de desarrollo
![Page 3: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/3.jpg)
Libertad para organizar la aplicación con arquitectura MV*
Pros y contras de cada arquitectura
MVVM, MVP o MVC
![Page 4: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/4.jpg)
MVVM
PROS: separación clara de la lógica de negocio en ViewModel, fácil de hacer unit test
CONS: WinJS solo tiene databinding en una dirección y no se actualiza, nos lo tenemos que montar nosotros usando, por ejemplo, Knockout
![Page 5: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/5.jpg)
MVP
PROS: la presentación contiene la lógica de negocio y la lógica de la vista, no es necesario “data binding”
CONS: puede que el código en la vista y en la presentación sea verboso, ya que se tienen que notificar los cambios.
![Page 6: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/6.jpg)
MVC
PROS: la vista solo contiene el template, no hay “data binding”
CONS: el controlador tiene que registrar y actuar a los eventos de la vista y también contiene la lógica de negocio. Será más difícil de hacer unit test
![Page 7: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/7.jpg)
Demo
WinJS MVC
![Page 8: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/8.jpg)
Transformar una web en una appsolo configurando un .json
Teniendo acceso al código parapoder modificar lo que quieras
Web App Template
![Page 9: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/9.jpg)
Demo
MicrosoftWAT
![Page 10: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/10.jpg)
Para a los que no les gusta el códigoHay también una buena alternativaCrear una app para Windows 8,desde una app (Appinception)
Microsoft Project Siena
![Page 11: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/11.jpg)
Demo
MicrosoftProject Siena
![Page 12: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/12.jpg)
Además de los métodos anteriorespodemos optar por otras soluciones
Angular, Backbone, Ember… nos sirveCualquier MV* que conozcamosExisten MV* para hechos con WinJS
![Page 13: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/13.jpg)
MVR hecho con WinJSTotalmente inspirado en Backbone
¿Es mejor que otros? NO¿Por qué?
Siempre se le puedehacer un fork
WinJS MVR
![Page 14: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/14.jpg)
Demo
To do listWinJS MVR
![Page 15: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/15.jpg)
YeahToast Notificaciones Windows 8 apps
MVVM Stack Clases de WinJS para este patrón
WinJS Toolkit Conjunto de helpers para WinJS
WinJS Languages Helper para los idiomas
WinJS Tools Más helpers para WinJS
Más en GitHub y CodePlex
Librerías
![Page 16: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/16.jpg)
Web Essentials Plugin para Visual Studio
Prepros Herramienta que procesa nuestro código
Segoe Symbols CSS con los símbolos Segoe
Nugget Gallery Galería con nuggets para VS
Color Scheme Herramienta online para colores
TFS, Floobits, VS Anywhere..
Herramientas
![Page 17: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/17.jpg)
Demo
Librerías yherramientas
![Page 18: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/18.jpg)
¿Con cual herramientas nos quedamos?
![Page 19: #Win8JSApps | 4.- Métodos de desarrollo](https://reader038.fdocuments.ec/reader038/viewer/2022110310/559251e41a28ab2b498b456d/html5/thumbnails/19.jpg)
(function(Gracias){ })(this.despedida);
Oriol Torrasuriusfurius
Quique Fdez. GuerraCKGrafico