SlideShare a Scribd company logo
1 of 19
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Da Silverlight a Angular senza toccare il
backend: fatto!
#APPMODERNISATION #UGIDOTNET
Michele Aponte- CEO/CTO @ Blexin Srl
michele.aponte@blexin.com
https://github.com/apomic80
Twitter: @apomic80
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
Kudos
#APPMODERNISATION
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Un giorno ci chiama un cliente…
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Requisiti
• Back end e Database non si possono toccare
• Vorremmo mantenere la stessa UI e UX
• La UI viene generata dinamicamente
• XAML (standard e verticale) sul database
• Bisogna usare il nostro «framework»
• Formare il team interno sulle tecnologie
adottate
• Dobbiamo fare una demo tra 6 mesi a un
cliente
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Requisiti
• Back end e Database non si possono toccare
• Vorremmo mantenere la stessa UI e UX
• La UI viene generata dinamicamente
• XAML (standard e verticale) sul database
• Bisogna usare il nostro «framework»
• Formare il team interno sulle tecnologie
adottate
• Dobbiamo fare una demo tra 6 mesi a un
cliente
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Perché Angular?
• Dobbiamo realizzare una Single Page
Application
• Elementi XAML -> Componenti Angular
• C# -> TYPESCRIPT
• XAML Binding -> RxJS e Observable
• Controlli Telerik -> Kendo UI
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Lo XAML dal database al browser
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Lo XAML dal database al browser
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Lo XAML dal database al browser
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Dal Binding XAML al Binding Angular
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Dal Binding XAML al Binding Angular
[(ngModel)]
Angular si accorge delle modifiche agli elementi
bindati con la Change Detection:
 Aggiorna
automaticamente la UI
 Bello, ma costoso
 Si può parzialmente
disabilitare
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Binding tra elementi e Converter
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION #UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
Binding tra elementi e Converter
I componenti devono essere
autonomi ma devono poter
comunicare tra loro:
- padre/figlio => @Input e @Output
- fratelli => il padre come
mediatore e @Input e @Output
- relazione qualsiasi => Dependency
Injection, Observable e operatori
RxJS
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION
… sparate pure
sul pianista!
Grazie a tutti per
la pazienza e …
#UGIDOTNET
APP MODERNISATION DAY 2019
#APPMODERNISATION

More Related Content

Similar to Da Silverlight a angular senza toccare il backend: fatto!

2011 -2014: COSA È CAMBIATO SUL WEB PER LE AZIENDE
2011 -2014: COSA È CAMBIATO SUL WEB PER LE AZIENDE2011 -2014: COSA È CAMBIATO SUL WEB PER LE AZIENDE
2011 -2014: COSA È CAMBIATO SUL WEB PER LE AZIENDE
SMAU
 

Similar to Da Silverlight a angular senza toccare il backend: fatto! (20)

App di successo quali strumenti? e le performance?
App di successo quali strumenti? e le performance?App di successo quali strumenti? e le performance?
App di successo quali strumenti? e le performance?
 
Web marketing per il turismo
Web marketing per il turismoWeb marketing per il turismo
Web marketing per il turismo
 
SPCData: la nuvola dei dati della Pubblica Amministrazione Italiana
SPCData: la nuvola dei dati della Pubblica Amministrazione ItalianaSPCData: la nuvola dei dati della Pubblica Amministrazione Italiana
SPCData: la nuvola dei dati della Pubblica Amministrazione Italiana
 
Applicazioni web e web design responsive - SMAU Bologna 2013
Applicazioni web e web design responsive - SMAU Bologna 2013Applicazioni web e web design responsive - SMAU Bologna 2013
Applicazioni web e web design responsive - SMAU Bologna 2013
 
IICBIM Lezione Remotizzata Gratuita - MEP Impianti virtuali nel BIM 31 marzo ...
IICBIM Lezione Remotizzata Gratuita - MEP Impianti virtuali nel BIM 31 marzo ...IICBIM Lezione Remotizzata Gratuita - MEP Impianti virtuali nel BIM 31 marzo ...
IICBIM Lezione Remotizzata Gratuita - MEP Impianti virtuali nel BIM 31 marzo ...
 
Presentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successoPresentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successo
 
Mobile servizi in punta di dita
Mobile servizi in punta di ditaMobile servizi in punta di dita
Mobile servizi in punta di dita
 
The Mobile Challenge - World Plone Day, Bologna 2015
The Mobile Challenge - World Plone Day, Bologna 2015The Mobile Challenge - World Plone Day, Bologna 2015
The Mobile Challenge - World Plone Day, Bologna 2015
 
Presentazione - Parky.pdf
Presentazione - Parky.pdfPresentazione - Parky.pdf
Presentazione - Parky.pdf
 
Percorsi di digitalizzazione per micro, piccole e medie imprese
Percorsi di digitalizzazione per micro, piccole e medie impresePercorsi di digitalizzazione per micro, piccole e medie imprese
Percorsi di digitalizzazione per micro, piccole e medie imprese
 
2011 -2014: COSA È CAMBIATO SUL WEB PER LE AZIENDE
2011 -2014: COSA È CAMBIATO SUL WEB PER LE AZIENDE2011 -2014: COSA È CAMBIATO SUL WEB PER LE AZIENDE
2011 -2014: COSA È CAMBIATO SUL WEB PER LE AZIENDE
 
2011-2014: cosa è cambiato sul Web per le aziende
2011-2014: cosa è cambiato sul Web per le aziende2011-2014: cosa è cambiato sul Web per le aziende
2011-2014: cosa è cambiato sul Web per le aziende
 
BIM e Industria 4.0: la rivoluzione data-centrica nella digitalizzazione del ...
BIM e Industria 4.0: la rivoluzione data-centrica nella digitalizzazione del ...BIM e Industria 4.0: la rivoluzione data-centrica nella digitalizzazione del ...
BIM e Industria 4.0: la rivoluzione data-centrica nella digitalizzazione del ...
 
Acadevmy - PWA & Angular
Acadevmy - PWA & AngularAcadevmy - PWA & Angular
Acadevmy - PWA & Angular
 
Clound computing vs mobile apps
Clound computing vs mobile appsClound computing vs mobile apps
Clound computing vs mobile apps
 
Presentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successoPresentarsi sul mercato globale con app di successo
Presentarsi sul mercato globale con app di successo
 
OBS4DX - Il ruolo dell’object storage nel percorso verso la Digital Transform...
OBS4DX - Il ruolo dell’object storage nel percorso verso la Digital Transform...OBS4DX - Il ruolo dell’object storage nel percorso verso la Digital Transform...
OBS4DX - Il ruolo dell’object storage nel percorso verso la Digital Transform...
 
Strategie per applicazioni web prima o meglio dell'app nativa
Strategie per applicazioni web prima o meglio dell'app nativaStrategie per applicazioni web prima o meglio dell'app nativa
Strategie per applicazioni web prima o meglio dell'app nativa
 
5 falsi miti su Woocommerce - Andrea Cardinali - WordCamp Catania 2019
5 falsi miti su Woocommerce - Andrea Cardinali - WordCamp Catania 20195 falsi miti su Woocommerce - Andrea Cardinali - WordCamp Catania 2019
5 falsi miti su Woocommerce - Andrea Cardinali - WordCamp Catania 2019
 
Lo scenario del mobile in italia e il suo futuro
Lo scenario del mobile in italia e il suo futuroLo scenario del mobile in italia e il suo futuro
Lo scenario del mobile in italia e il suo futuro
 

More from Michele Aponte

More from Michele Aponte (20)

Frontend Development with Blazor
Frontend Development with BlazorFrontend Development with Blazor
Frontend Development with Blazor
 
Generazione dinamica della UI con Blazor WebAssembly
Generazione dinamica della UI con Blazor WebAssemblyGenerazione dinamica della UI con Blazor WebAssembly
Generazione dinamica della UI con Blazor WebAssembly
 
La rivoluzione blazor
La rivoluzione blazorLa rivoluzione blazor
La rivoluzione blazor
 
Intelligenza artificiale nel mondo front-end - CodeGen2021
Intelligenza artificiale nel mondo front-end - CodeGen2021Intelligenza artificiale nel mondo front-end - CodeGen2021
Intelligenza artificiale nel mondo front-end - CodeGen2021
 
Blazor Focus Week Bari
Blazor Focus Week BariBlazor Focus Week Bari
Blazor Focus Week Bari
 
DevDayNapoli - Blazor: Creare Single Page Application con .NET e WebAseembly
DevDayNapoli - Blazor: Creare Single Page Application con .NET e WebAseemblyDevDayNapoli - Blazor: Creare Single Page Application con .NET e WebAseembly
DevDayNapoli - Blazor: Creare Single Page Application con .NET e WebAseembly
 
DevDayBenevento - Blazor: Creare Single Page Application con .NET e WebAseembly
DevDayBenevento - Blazor: Creare Single Page Application con .NET e WebAseemblyDevDayBenevento - Blazor: Creare Single Page Application con .NET e WebAseembly
DevDayBenevento - Blazor: Creare Single Page Application con .NET e WebAseembly
 
Cognitive services in Business applications
Cognitive services in Business applicationsCognitive services in Business applications
Cognitive services in Business applications
 
Angular in produzione: Best Practices e Performance Improvements
Angular in produzione:Best Practices e Performance ImprovementsAngular in produzione:Best Practices e Performance Improvements
Angular in produzione: Best Practices e Performance Improvements
 
Angular and beyond
Angular and beyondAngular and beyond
Angular and beyond
 
Realizzare applicazioni desktop con Electron e Angular
Realizzare applicazioni desktop con Electron e AngularRealizzare applicazioni desktop con Electron e Angular
Realizzare applicazioni desktop con Electron e Angular
 
Angular e asp.net core: un framework sul framework
Angular e asp.net core: un framework sul frameworkAngular e asp.net core: un framework sul framework
Angular e asp.net core: un framework sul framework
 
Realizzare applicazioni desktop con Electron e Angular
Realizzare applicazioni desktop con Electron e AngularRealizzare applicazioni desktop con Electron e Angular
Realizzare applicazioni desktop con Electron e Angular
 
Sviluppo web con asp.net core 2
Sviluppo web con asp.net core 2Sviluppo web con asp.net core 2
Sviluppo web con asp.net core 2
 
Un framework sul framework: generare una SPA dinamicamente in Angular
Un framework sul framework: generare una SPA dinamicamente in AngularUn framework sul framework: generare una SPA dinamicamente in Angular
Un framework sul framework: generare una SPA dinamicamente in Angular
 
Angular vsr React
Angular vsr ReactAngular vsr React
Angular vsr React
 
Angular 2 on stage
Angular 2 on stageAngular 2 on stage
Angular 2 on stage
 
Realizzare Single Page Application con Angular2
Realizzare Single Page Application con Angular2Realizzare Single Page Application con Angular2
Realizzare Single Page Application con Angular2
 
Single Page Application con Angular 2
Single Page Application con Angular 2Single Page Application con Angular 2
Single Page Application con Angular 2
 
Angular2 on stage
Angular2 on stageAngular2 on stage
Angular2 on stage
 

Da Silverlight a angular senza toccare il backend: fatto!

  • 1. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Da Silverlight a Angular senza toccare il backend: fatto! #APPMODERNISATION #UGIDOTNET Michele Aponte- CEO/CTO @ Blexin Srl michele.aponte@blexin.com https://github.com/apomic80 Twitter: @apomic80
  • 2. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET Kudos #APPMODERNISATION
  • 3. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Un giorno ci chiama un cliente…
  • 4. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Requisiti • Back end e Database non si possono toccare • Vorremmo mantenere la stessa UI e UX • La UI viene generata dinamicamente • XAML (standard e verticale) sul database • Bisogna usare il nostro «framework» • Formare il team interno sulle tecnologie adottate • Dobbiamo fare una demo tra 6 mesi a un cliente
  • 5. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Requisiti • Back end e Database non si possono toccare • Vorremmo mantenere la stessa UI e UX • La UI viene generata dinamicamente • XAML (standard e verticale) sul database • Bisogna usare il nostro «framework» • Formare il team interno sulle tecnologie adottate • Dobbiamo fare una demo tra 6 mesi a un cliente
  • 6. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION
  • 7. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Perché Angular? • Dobbiamo realizzare una Single Page Application • Elementi XAML -> Componenti Angular • C# -> TYPESCRIPT • XAML Binding -> RxJS e Observable • Controlli Telerik -> Kendo UI
  • 8. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Lo XAML dal database al browser
  • 9. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Lo XAML dal database al browser
  • 10. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Lo XAML dal database al browser
  • 11. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION
  • 12. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Dal Binding XAML al Binding Angular
  • 13. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Dal Binding XAML al Binding Angular [(ngModel)] Angular si accorge delle modifiche agli elementi bindati con la Change Detection:  Aggiorna automaticamente la UI  Bello, ma costoso  Si può parzialmente disabilitare
  • 14. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION
  • 15. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Binding tra elementi e Converter
  • 16. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION Binding tra elementi e Converter I componenti devono essere autonomi ma devono poter comunicare tra loro: - padre/figlio => @Input e @Output - fratelli => il padre come mediatore e @Input e @Output - relazione qualsiasi => Dependency Injection, Observable e operatori RxJS
  • 17. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION
  • 18. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION … sparate pure sul pianista! Grazie a tutti per la pazienza e …
  • 19. #UGIDOTNET APP MODERNISATION DAY 2019 #APPMODERNISATION