.NET Compact Framework Nuno Costa [email protected] Microsoft Portugal .NET Platform A web services implementation .NET Mobile Development ASP.NET Mobile Controls Thin client Smart Device Programmability Smart client Remote Web Pages Local Code Mobile Web Browser .NET Compact Framework Device Operating System .NET Mobile Development Vantagens de aplicações móveis Web Rendering Adaptativo Manutenção simplificada Extensão Natural de Web Sites existentes Execução Server-side Sem deployment no cliente Funcionalidade Offline Execução Local Dados Locais Experiência de utilização rica Code base única Suporte Dinâmico para muitas combinações de dispositivos/browsers Suporte a browsers de dispositivos de baixa capacidade Vantagens de smart device apps Multimedia UI elaborada Integração com funcionalidades dos dispositivos Leitores Cartão de crédito Leitores Código Barras Receptores GPS Telefone/SMS .NET Compact Framework Versão “compacta” da .NET Framework Desenhado para dispositivos com recursos limitados Integração com VS.NET, C#, VB.NET Possibilitar desenvolvimento de aplicações ricas Co-existir com Sistema Operativo Host Aplicações LOB, e clientes de Web Services Class libs para forms, drawing, storage, network, data access e XML Execução em threads nativas P/Invoke para chamar código nativo Aplicações performantes e robustas JIT compiler optimizado Robustez e Segurança Interactividade, offline & online Fácil consumo de Web Services .NET para Dispositivos Arquitetura App Domain Host .NET Compact Framework CLR … Launch Applications Device Specific Class Libs Base Class Libs Execution Engine (MSCOREE.DLL) Platform Adaptation Layer Host Operating System Managed Native Compact Framework CLR .NET Compact Framework CLR suporta todas as funcionalidades core do CLR Exceptions Constructors e Finalizers Remote Debugging App Domains JIT Garbage Collection P/Invoke … Visual Studio .NET e .NET CF Visual Basic C++ Web Services J# … Windows Forms ADO.NET and XML Base Class Libraries Common Language Runtime Visual Studio .NET ASP.NET Web Forms C# Projectos Smart Device • .NET Compact Framework •IDE integrado • Emuladores • Remote debugging .NET Compact Framework • Managed code • Web services • Subset rico de .NET Framework Class Libraries Class Library Compatibilidade Compatibilidade com a .NET Framework Subconjunto de funcionalidades Subset para dispositivos Semelhanças entre as plataformas Reaproveitamento de Skills e de código Tamanho/Funcionalidade Reduzir custo do OEM Suficiente para “aplicações reais” Class Library System.Web Services Description Discovery Protocols System.Windows.Forms UI Design Component Model HTML Controls Web Controls System.Drawing Cache Security Drawing 2D Printing Configuration Session State Imaging Text System.Data System.Xml ADO.NET SQL Client XML Document Serialization Design SQL ServerCE Xslt/XPath Reader/Writers System Collections IO Configuration Security Net Service Process Text Reflection Diagnostics Globalization Resources Threading Runtime Interop Services Remoting Serialization O que falta? Reflection Emit Remoting Serialization Code Dom Printing COM Interoperability Funcionalidade Server side XPath/XSLT User Interface 28 controlos e componentes Funcionalidade de Windows CE Form Designer Suporte limitado a certas funcionalidades gráficas, como transparência Menos Controlos Suporte Limitado para Custom Controls Não suportado ActiveX Controls Printing Drag e Drop Windows Forms Controls Controlos Suportados Button CheckBox ComboBox ContextMenu DataGrid DomainUpDown FileOpenDialog FileSaveDialog HScrollBar ImageList Input Panel Label ListBox ListView MainMenu NumericUpDown Panel PictureBox ProgressBar RadioButton StatusBar Não Suportados CheckedListBox ColorDialog ErrorProvider HelpProvider LinkLabel NotifyIcon ToolTip Splitter FontDialog TabControl TextBox Timer ToolBar Track Bar TreeView VScrollBar 1ª Aplicação .NET CF Acesso a Dados ADO.NET Providers incluídos com .NET CF System.Data.SqlClient System.Data.SqlServerCe Modelo ADO.NET DataSet DataAdapter DataReader Command DataParameter Transaction Connection Acesso a Dados Acesso Directo à Base Dados Windows Forms ADO.NET ADO.NET SQL Server Data Provider .NET Compact Framework Mais Query Language rica Acesso a toda a base de dados; aplicação usa o que é relevante Windows Server Menos Ligação permanente Não escala no Servidor; “two tier” design Sem modelo de sincronização para dados dinâmicos Acesso a Dados SQLCE com Replication Windows Forms ADO.NET SQL CE .NET Compact Framework Replication (HTTP) Mais SQL Server SQL CE Base de Dados local muito robusta Model de sincronização Avançado e performante Usa HTTP Windows Server Menos Requer configuração no Servidor Sql ServerCE Engine footprint Acesso a Dados Classes XML Suportadas XmlTextReader e XmlTextWriter Parsers de XML Forward-only Melhor performance, sem in-memory caching XmlDocument Parsa documento XML por DOM Requer mais recursos de memória Mais funcionalidade Data Access Classes XML Não Suportadas XmlDataDocument XPath Query sobre dados XML não estruturados XSL/T Vistas Relacionais e hierárquicas de XML Transforma XML em outros formatos XML Validation Verifica exactidão do documento XML SQL Server Windows® CE Edition 2.0 XML / BizTalk / CS 2002 HTTP IIS Enterprise back-end (SAP, PeopleSoft, etc.) Engine para dispositivos Windows CE Replicação rica e sincronização com SQL Server Desenhado para alta performance em ambientes de recursos limitados Managed .NET Compact Framework provider ADO.NET .NET Compact Framework Futuro Suporte à próxima versão de Smartphone Funcionalidade da 1.0 disponível no SmartPhone Próxima Major Release Digital signing e .NET code access security model Mobile and Communication APIs (SMS, etc.) Stronger native code interop Visual Studio .NET Futuro Add-on para próxima versão do Smartphone Próxima Major Release SQL Server CE e data design tools User Controls no forms designer Projectos de Setup mais ricos para Smart Devices Extensions Ambiente mais rápido e mais fácil de utilizar Tools vs. Devices Embedded Tools (eVC / eVB) Smartphone Pocket PC Sim Só eVC++ Sim Tablet PC Sim (via Tablet SDK) .NET .NET CF (futuro) Sim ASP.NET Mobile Controls Sim Sim Sim Para mais informação … Site MSDN Portugal Newsgroups http://www.microsoft.com/portugal/msdn microsoft.public.pt.dotnet microsoft.public.pt.pocketpc Comunidades Microsoft SmartDevices Developer Community http://smartdevices.microsoftdev.com/ GotDotNet http://www.gotdotnet.com © 2001 Microsoft Corporation. All rights reserved. Demo Title