La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Windows Development Day 28/01/05 Bologna Windows Longhorn, Avalon and XAML Daniele Bochicchio Microsoft ASP.NET MVP Daniele Bochicchio.

Presentazioni simili


Presentazione sul tema: "Windows Development Day 28/01/05 Bologna Windows Longhorn, Avalon and XAML Daniele Bochicchio Microsoft ASP.NET MVP Daniele Bochicchio."— Transcript della presentazione:

1 Windows Development Day 28/01/05 Bologna Windows Longhorn, Avalon and XAML Daniele Bochicchio Microsoft ASP.NET MVP Daniele Bochicchio Microsoft ASP.NET MVP Cristian Civera Microsoft ASP.NET MVP Cristian Civera Microsoft ASP.NET MVP

2 Agenda Windows Longhorn Pillars WinFX: Avalon, Aero WinFS Indigo Avalon: non solo Longhorn XAML Fondamenti, il code behind, i nuovi controlli, style BAML e compilazione delle applicazioni Costruzione di applicazioni 3D Binding ed applicazioni data-centric Eventi e il nuovo concetto di comandi Rivoluzione e futuro Windows Longhorn Pillars WinFX: Avalon, Aero WinFS Indigo Avalon: non solo Longhorn XAML Fondamenti, il code behind, i nuovi controlli, style BAML e compilazione delle applicazioni Costruzione di applicazioni 3D Binding ed applicazioni data-centric Eventi e il nuovo concetto di comandi Rivoluzione e futuro

3 Levoluzione delle API 1985: Win16 con Windows : Win32 (Windows 3.0), VB1 1992: MFC (Microsoft Foundation Classes), OLE 1993: COM 1995: VB : VB 5, DCOM 1998: VB : COM+ 2002:.NET Framework :.NET Framework :.NET Framework : Longhorn Application Model 1985: Win16 con Windows : Win32 (Windows 3.0), VB1 1992: MFC (Microsoft Foundation Classes), OLE 1993: COM 1995: VB : VB 5, DCOM 1998: VB : COM+ 2002:.NET Framework :.NET Framework :.NET Framework : Longhorn Application Model

4 Win32 Programming Vantaggi Si può fare tutto Svantaggi A patto di sapere come si fa :) Bisogna conoscere le API di Windows Vantaggi Si può fare tutto Svantaggi A patto di sapere come si fa :) Bisogna conoscere le API di Windows

5 In principio erano VB, ATL, MFC Vantaggi Layer aggiuntivi per non passare direttamente per le API di Windows Possibilità di componentizzare Svantaggi Difficoltà di apprendimento (ATL, MFC) Poco controllo sul risultato (VB) Vantaggi Layer aggiuntivi per non passare direttamente per le API di Windows Possibilità di componentizzare Svantaggi Difficoltà di apprendimento (ATL, MFC) Poco controllo sul risultato (VB)

6 Poi venne COM Vantaggi Estendibilità senza per forza usare le API di Windows Possibilità di usare oggetti scritti in linguaggi diversi Svantaggi DLL hell Versioning deployment Vantaggi Estendibilità senza per forza usare le API di Windows Possibilità di usare oggetti scritti in linguaggi diversi Svantaggi DLL hell Versioning deployment

7 Infine arrivò il.NET Fx Vantaggi Security: Control Access Security (CAS) Versioning, side-by-side execution API uguali per ogni linguaggio Compilazione ed ottimizzazione del JIT-ter Protezione da codice insicuro (buffer overrun) Svantaggi Interop per molte funzionalità Rottura con il passato Vantaggi Security: Control Access Security (CAS) Versioning, side-by-side execution API uguali per ogni linguaggio Compilazione ed ottimizzazione del JIT-ter Protezione da codice insicuro (buffer overrun) Svantaggi Interop per molte funzionalità Rottura con il passato

8 ClickOnce in pillole Deployment semplificato da web Incluso in.NET Framework 2.0 (Whidbey) CAS in base al manifest ed al contesto in cui gira Possibilità di eseguire le applicazioni online installarle in locale Funzionalità di auto update incluse Deployment semplificato da web Incluso in.NET Framework 2.0 (Whidbey) CAS in base al manifest ed al contesto in cui gira Possibilità di eseguire le applicazioni online installarle in locale Funzionalità di auto update incluse

9 Un giorno sarà Longhorn Vantaggi.NET Fundamentals: CLR, CAS, versioning, side-by-side exec, ADO.NET Tutto managed: da qualsiasi linguaggio, stesso tipo di accesso alle API di Windows Flessibilità del web: Interaccia a markup: XAML Navigation Application Isolamento da altre applicazioni Deployment rapido con ClickOnce MSBuild per compilare con azioni personalizzate Svantaggi E un modo inesplorato ai più Vantaggi.NET Fundamentals: CLR, CAS, versioning, side-by-side exec, ADO.NET Tutto managed: da qualsiasi linguaggio, stesso tipo di accesso alle API di Windows Flessibilità del web: Interaccia a markup: XAML Navigation Application Isolamento da altre applicazioni Deployment rapido con ClickOnce MSBuild per compilare con azioni personalizzate Svantaggi E un modo inesplorato ai più

10 Windows Longhorn Uscita prevista nel 2006 Includerà Avalon, Aero ed Indigo WinFS è stato rimandato a data da destinarsi E il primo sistema operativo completamente managed E un consolidamento delle tecnologie esistenti:.NET Framework, Web Services, Remoting E linnovazione: Aereo, Avalon, Click-once Uscita prevista nel 2006 Includerà Avalon, Aero ed Indigo WinFS è stato rimandato a data da destinarsi E il primo sistema operativo completamente managed E un consolidamento delle tecnologie esistenti:.NET Framework, Web Services, Remoting E linnovazione: Aereo, Avalon, Click-once

11 Communication AvalonWinFSIndigo Windows Forms ASP.NET ObjectSpaces DataSet SQL XML Providers Framework Services Schemas Data Model ADO.NET Connectivity Synchronization (WinFS, Win32..) InfoAgent (PreferenceRules..) InfoAgent (PreferenceRules..) FileSystem Services (MetaDataHandlers..) FileSystem Services (MetaDataHandlers..) Calendar Media Document … … Items Relationships Extensions Communications Manager (Port) Messaging Services Transport Channels (IPC, HTTP, TCP…) Transport Channels (IPC, HTTP, TCP…) Channels (Datagram, Reliable, Peer, …) Policy Engine Policy Engine Message Encoder Message Encoder Channel Security Channel Security Queuing Eventing Routing Transaction Desktop Services Desktop Services Desktop Window Manager Desktop Window Manager Presentation Object Manager Desktop Composition Engine Animation and Composition Media Services Hardware Rendering Hardware Rendering Media Processing Capture and Sourcing Capture and Sourcing Software Rendering and Sinks Software Rendering and Sinks Adaptive UI Engine Adaptive UI Engine Page/Site Composition Personalization and Profiling Services Personalization and Profiling Services Membership and Security Services Membership and Security Services Designer Services Designer Services Controls Interop Engine Controls Interop Engine Controls Windows Forms Application Services Application Services People Group Collaboration People and Groups People and Groups Collaboration History Collaboration History Real-Time Activities Real-Time Activities Signaling Federation System Services TransactionsStorage Protocols Network Services Kernel Mode Base Class Libraries Memory Manager Hosting Layer Code Execution Loader Security Serialization Lightweight Transactions Lightweight Transactions Transaction Coordinator Kernel Transaction Manager Logging Service Kernel Hardware Abstraction Layer Process Manager Process Manager Security Reference Monitor LPC Facility Memory Manager Power Manager Config Manager Plug and Play Transacted NTFS Transacted NTFS Cache Manager Cache Manager Universal Data Format Universal Data Format Filter Engine Filter Engine TCP, UDP IPV4, IPV6 TCP, UDP IPV4, IPV6 IPSEC QOS HTTP Listener HTTP Listener Internet Connection Firewall Demand Activation and Protocol Health PNRP Native WiFi Native WiFi SIP TCP Listener TCP Listener UDP Listener UDP Listener IPC Listener IPC Listener Network Class Library GDI/GDI+ Window Manager Window Manager Global Audio Engine Global Audio Engine Direct 3D Graphics Graphics drivers DDI Input Manager Input Manager Audio Drivers Audio Drivers DirectX Graphics Mini port DirectX Graphics Mini port Redirectors SCSI/FC Device Drivers Management Services (Event Logs, Tracing, Probes, Auto Update, Admin) Management Services (Event Logs, Tracing, Probes, Auto Update, Admin) IO Manager Application Deployment Engine (Click-Once) Application Deployment Engine (Click-Once) Identity & Security System Identity & Security System FAT 16/32 Filter Manager Filter Manager Distributed File System Distributed File System Virtual Shadow Copy Service Virtual Shadow Copy Service File Replication Service File Replication Service Virtual Disk Service Virtual Disk Service Models Service Object T/SQL XML Document UI Media CLR PresentationDataCommunication Base Operating System Services AvalonWinFSIndigo WinFX

12 AvalonWinFSIndigo PresentationDataCommunication Base Operating System Services WinFX

13 E un insieme di tool, codice e strumenti per creare applicazioni per Longhorn Tutto gestito da codice managed.NET Framework 2.x per laccesso alle API WinFX = API al 100% Se cè unAPI in Longhorn, esiste il corrispettivo in WinFX Se non esiste unAPI in WinFX, non esiste in LH Si scarica da E un insieme di tool, codice e strumenti per creare applicazioni per Longhorn Tutto gestito da codice managed.NET Framework 2.x per laccesso alle API WinFX = API al 100% Se cè unAPI in Longhorn, esiste il corrispettivo in WinFX Se non esiste unAPI in WinFX, non esiste in LH Si scarica da Longhorn SDK

14 I numeri di LH PDC build API documentate pagine di DOC API documentate pagine di DOC 172 assemblies 438 namespaces tipi 172 assemblies 438 namespaces tipi 39 assemblies 121 namespaces tipi 39 assemblies 121 namespaces tipi Longhorn.NET Framework 1.x

15 WinFS Sistema di ricerca basato su SQL Server Yukon, nel sistema Aggregatore logico di dati Visualizzazione oggetti per proprietà (ordina per autore, dimensione) a prescindere dalla loro locazione sul disco fisso. Necessita di una partizione abilitata Basato su XML Schema per larricchimento delle funzionalità Lavora in unione con NTFS per migliorare lutilizzo del sistema operativo Posticipato a data da destinarsi Sistema di ricerca basato su SQL Server Yukon, nel sistema Aggregatore logico di dati Visualizzazione oggetti per proprietà (ordina per autore, dimensione) a prescindere dalla loro locazione sul disco fisso. Necessita di una partizione abilitata Basato su XML Schema per larricchimento delle funzionalità Lavora in unione con NTFS per migliorare lutilizzo del sistema operativo Posticipato a data da destinarsi

16 Aero La nuova interfaccia grafica, completamente 3D Lavora direttamente sulla GPU Se lhardware non supporta tutte le funzionalità, verrà fatto il rendering minimo Supporto per trasparenze, alpha blending sugli oggetti, effetto vetro Esiste una versione minima nella WinHec build La nuova interfaccia grafica, completamente 3D Lavora direttamente sulla GPU Se lhardware non supporta tutte le funzionalità, verrà fatto il rendering minimo Supporto per trasparenze, alpha blending sugli oggetti, effetto vetro Esiste una versione minima nella WinHec build

17 Indigo Strato di comunicazione di Longhorn Riunisce: Web Service Remoting Message Queue Basato su XML Approccio SOA (Service Oriented Architecture) Riunisce gli standard di WSA per fornire servizi: Sicuri Integri Transazionali Interoperabili Oggi parzialmente implementato con WS2 Strato di comunicazione di Longhorn Riunisce: Web Service Remoting Message Queue Basato su XML Approccio SOA (Service Oriented Architecture) Riunisce gli standard di WSA per fornire servizi: Sicuri Integri Transazionali Interoperabili Oggi parzialmente implementato con WS2

18 Avalon La nuova interfaccia di presentazione Offre nuove managed APIs e controls Supporto per rich e complex GUI Filmati come sfondo di oggetti di una finestra Possibilità di posizionare gli oggetti in maniera inclinata nella finestra E un insieme di classi offerte da WinFX attraverso il namespace System.Windows La nuova interfaccia di presentazione Offre nuove managed APIs e controls Supporto per rich e complex GUI Filmati come sfondo di oggetti di una finestra Possibilità di posizionare gli oggetti in maniera inclinata nella finestra E un insieme di classi offerte da WinFX attraverso il namespace System.Windows

19 Avalon November 04 CTP Versione di Avalon per Windows XP e Windows Server 2003 Richiede il.NET Framework 2.0 Nov 04 CTP Include un SDK Prima versione a supportare i sistemi operativi vecchi La versione finale di Avalon girerà su XP, 2003, 2003 R2 e Longhorn Video e audio non sono attivi Versione di Avalon per Windows XP e Windows Server 2003 Richiede il.NET Framework 2.0 Nov 04 CTP Include un SDK Prima versione a supportare i sistemi operativi vecchi La versione finale di Avalon girerà su XP, 2003, 2003 R2 e Longhorn Video e audio non sono attivi

20 XAML Nuovo linguaggio XML per definire le GUI Gli oggetti sono inseriti in maniera dichiarativa e convertiti da un motore in istanze di un oggetto Gli oggetti sono convertiti in istanze di oggetti nel namespace MsAvalon.Windows.Controls/Shapes/Media/Data… Nuovo linguaggio XML per definire le GUI Gli oggetti sono inseriti in maniera dichiarativa e convertiti da un motore in istanze di un oggetto Gli oggetti sono convertiti in istanze di oggetti nel namespace MsAvalon.Windows.Controls/Shapes/Media/Data… Questo e' un button

21 Due tipi di applicazioni Application Class Supporto alle applicazioni Windows classiche NavigationApplication Class Supporto alle applicazioni con necessità di funzionalità di navigazione, stile web Application Class Supporto alle applicazioni Windows classiche NavigationApplication Class Supporto alle applicazioni con necessità di funzionalità di navigazione, stile web

22 Componenti di XAML Panels il concetto che sta dietro è identico a quello dei Panels di ASP.NET, sono cioè dei contenitori di altri controls Documents è una delle novità, perché rappresenta un insieme di oggetti in grado di mostrare documenti Controls a cosa servono dovrebbe essere chiaro, ma lo ripetiamo. Sono utilizzati per interagire con l'utente. Shapes sono usati per inserire oggetti vettoriali. Panels il concetto che sta dietro è identico a quello dei Panels di ASP.NET, sono cioè dei contenitori di altri controls Documents è una delle novità, perché rappresenta un insieme di oggetti in grado di mostrare documenti Controls a cosa servono dovrebbe essere chiaro, ma lo ripetiamo. Sono utilizzati per interagire con l'utente. Shapes sono usati per inserire oggetti vettoriali.

23 I nuovi controlli System.Windows.Controls.Primitives: controlli primitivi per fornire: Bottoni Selezioni MenuItem Elementi che già conosciamo oggi… Ogni controllo può contenere ulteriori controlli/shapes che ne definiscono il layout Lo style dellattuale Windows è emulato tramite shapes System.Windows.Controls.Primitives: controlli primitivi per fornire: Bottoni Selezioni MenuItem Elementi che già conosciamo oggi… Ogni controllo può contenere ulteriori controlli/shapes che ne definiscono il layout Lo style dellattuale Windows è emulato tramite shapes

24 Windows Development Day 28/01/05 Bologna Avalon e XAML su Windows XP

25 Il code behind Design e source legati con luso di partial class In file1.xaml In file1.xaml.cs Design e source legati con luso di partial class In file1.xaml In file1.xaml.cs public partial class MyClass : [Application] { // codice }

26 BAML e compilazione Il file xaml viene trasformato in un file binario.BAML Ottimizzato nelle dimensioni Inserito nelle risorse dellassembly e caricato a runtime E possibile sfruttare quindi la localizzazione delle risorse Le variabili vengono valorizzate Era previsto anche un secondo metodo CAML alla ASP.NET, ma verrà scartato Il file xaml viene trasformato in un file binario.BAML Ottimizzato nelle dimensioni Inserito nelle risorse dellassembly e caricato a runtime E possibile sfruttare quindi la localizzazione delle risorse Le variabili vengono valorizzate Era previsto anche un secondo metodo CAML alla ASP.NET, ma verrà scartato

27 Style Permettono di Specificare proprietà comuni Ridefinire un controllo Variare il comportamento al mutare di proprietà dipendenti Identificabili per nome o per tipo di controllo Sono relativi al controllo padre e ereditabili I controlli in Avalon sfruttano gli style per il loro layout Permettono di Specificare proprietà comuni Ridefinire un controllo Variare il comportamento al mutare di proprietà dipendenti Identificabili per nome o per tipo di controllo Sono relativi al controllo padre e ereditabili I controlli in Avalon sfruttano gli style per il loro layout


Scaricare ppt "Windows Development Day 28/01/05 Bologna Windows Longhorn, Avalon and XAML Daniele Bochicchio Microsoft ASP.NET MVP Daniele Bochicchio."

Presentazioni simili


Annunci Google