Una piattaforma per soluzioni service oriented: User Experience Dino Esposito Software Architect Managed Design http://blogs.ugidotnet.org/dinoes Fatti L’utente è al centro dei pensieri di tutti Pochi scrivono applicazioni che pongono l’utente realmente al centro Solo oggi si parla seriamente di user experience Solo oggi abbiamo Office 2007 che “prova” a cambiare la logica di applicazioni diffuse Solo oggi con AJAX (e affini) si parla di mashup e di portare “information at your fingertips” L’Utente al centro Ilmodello del futuro: Software + Services La piattaforma Windows Presentation Foundation Sidebar Gadgets Microsoft Office Designer Look, behavior, brand, e emotional connection “Silverlight” Developer Function, deployment, data, security Evoluzione Fidelity Reach ASP.NET AJAX EXTENSION Silverlight DirectX MFC Visual Basic Office VBA Internet Explorer DHTML ASP WPF: Principi di progettazione Integrazione modello unificato di API per diversi formati non più GDI/GDI+, DirectShow, Direct 3D API Sviluppo per desktop e web Grafica vettoriale Per il motore di composizione Sfrutta la GPU dei moderni PC Programmazione dichiarativa con XAML Nuovo supporto per i documenti e la stampa Condivisione di documenti tra piattaforme diverse WPF: Consumer Rich, immersive web experiences Kiosk applications Online shopping Content distribution WPF: Enterprise Data dashboards Visualisation Custom tools/management apps Real-time reporting http://www.otto.de/vista Programmazione dichiarativa e XAML XAML = Extensible Application Markup Language • • • XAML <Button Width="100"> OK <Button.Background> LightBlue </Button.Background> </Button> Usato da WPF per dichiarare ciò che si vuole rappresentare Linguaggio di markup per dichiarare oggetti, non solo WPF Codice e contenuto sono separati C# Button b1 = new Button(); b1.Content = "OK"; b1.Background = new SolidColorBrush(Colors.LightBlue); b1.Width = 100; VB.NET Dim b1 As New Button b1.Content = "OK" b1.Background = New _ SolidColorBrush(Colors.LightBlue) b1.Width = 100 WPF + XAML Designers creano l’interfaccia Developers aggiungono la logica Tool Microsoft per Designers e Developers Con XAML + WPF aumenta la collaborazione Programmazione dichiartativa con XAML Tool di terze parti (Aurora di Mobiform, ZAM 3D - Electric Rain) Visual Studio Tools For Office Estende gli Office document Ribbon Customization Ribbon Actions Pane Group Tab Control Outlook custom form regions Office System 2007 Principali Novità per lo sviluppo client Add-in Ribbon Task Core Features Pane Office XML Format Esterno Processo Managed Add-ins Custom Task Panes RibbonX Office Open XML Format Supporto in VS 2008 Ribbon Controls Design Surface Fatti Animazione e grafica 2D vettoriale Supporto AJAX/JavaScript/DOM Media Industry-standard codecs per video WMV, WMA, VC-1 XAML parser che riconosce un sottinsieme limitato di WPF Silverlight 1.0 : Media Experiences Qualità HD video quality DVD-like interattività e overlays Sviluppo Flessibile Integrabile con AJAX framework esistenti SMPTE-standard VC-1, WMV and MP3 Delivery Live Streaming oppure On-Demand Performance http://www.silverlight.net Browser Host MS AJAX Library DOM Integration .NET for Silverlight Data LINQ WPF XLINQ Extensible Controls REST BCL RSS Generics Collections SOAP DLR Ruby Python Networking POX JSON Legend CLR Execution Engine V1.1 Legend Deploy Friction-Free Installer AutoUpdater Presentation Core XAML UI Core Vector Media Data Binding Text AnimationImages Features VC1 WMA MP3 Controls Layout Editing V1.0 ASP.NET AJAX Extensions Costruito sulle fondamenta di ASP.NET 2.0 consiste in: Microsoft AJAX Library Microsoft ASP.NET 2.0 Ajax Extension Microsoft ASP.NET Futures CTP Microsft AJAX Control Toolkit (codeplex) ASP.NET 3.5 Disponibile per tutti i browser senza installazione Riduce la latenza del Web Page refresh AJAX Application Models Server-centric… Browser Server Application Initial Rendering (UI + Behavior) Pages Presentation HTML/CSS Input Data Updated UI + Behavior Microsoft AJAX Library Component and UI Framework, Controls Client Application Services UI Behavior App Logic/Data Managed Code Managed CodeA ASP.NET AJAX Extensions Page Framework, Server Controls Application Services AJAX Application Models … o client-centric Browser Presentation HTML/CSS Web Service Proxies Server Application Initial Rendering (UI + Behavior) Pages Input Data App Logic/Data UI Behavior Data Javascript Microsoft AJAX Library Component and UI Framework, Controls Client Application Services Managed Code ASP.NET AJAX Extensions Page Framework, Server Controls Application Services Conclusioni La UE deve migliorare Pensare la interfaccia utente in modo useroriented ma anche realizzare applicazioni in modo user-oriented Il back-end è fondamentale ma l’utente è colui che usa l’applicazione Servizi software portano verso una fusione tra desktop e RIA Tecnologia chiave? Silverlight (che verrà) © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.