+ All Categories
Home > Documents > .NET Compact Framework

.NET Compact Framework

Date post: 21-Mar-2016
Category:
Upload: nonnie
View: 52 times
Download: 4 times
Share this document with a friend
Description:
Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br. .NET Compact Framework. CLR do .NET Compact Framework .NET para Smart devices (Dispositivos Inteligentes) MIT (Mobile Internet Toolkit) SDE (Smart Device Extensions) Smart Device Extensions e desenvolvimento Conclusão Referências. - PowerPoint PPT Presentation
22
Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br Cin / UFPE Projeto de Compiladores – Prof. André Santos 28/06/22 Gustavo Cabral / Igor Gatis Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br {gflc,ialg}@cin.ufpe.br .NET Compact Framework .NET Compact Framework
Transcript
Page 1: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

Gustavo Cabral / Igor GatisGustavo Cabral / Igor Gatis{gflc,ialg}@cin.ufpe.br{gflc,ialg}@cin.ufpe.br

.NET Compact Framework.NET Compact Framework

Page 2: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

RoteiroRoteiro CLR do .NET Compact FrameworkCLR do .NET Compact Framework .NET para Smart devices (Dispositivos Inteligentes).NET para Smart devices (Dispositivos Inteligentes)

MIT (Mobile Internet Toolkit)MIT (Mobile Internet Toolkit) SDE (Smart Device Extensions)SDE (Smart Device Extensions)

Smart Device Extensions e desenvolvimentoSmart Device Extensions e desenvolvimento ConclusãoConclusão ReferênciasReferências

Page 3: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

CLR do .NET Compact Framework CLR do .NET Compact Framework

Motor de Execução (Execution Engine - EE) por CPU e SOpor CPU e SO MSCOREE.dll, MSCOREE1_0.dll (EE)MSCOREE.dll, MSCOREE1_0.dll (EE) NETCFAGL.dll (GWES interface)NETCFAGL.dll (GWES interface) CGACUTIL.exe (GAC manager)CGACUTIL.exe (GAC manager)

Biblioteca de Classes Independente de CPU e OSIndependente de CPU e OS DLLsDLLs

Arquivo de Erros (SYSTEM.SR.dll) Por linguagemPor linguagem

Globalização Pacote por linguagem/regiãoPacote por linguagem/região

Core do Sistema:Core do Sistema:

Page 4: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

Arquitetura do CLR .NET Compact Arquitetura do CLR .NET Compact FrameworkFramework

Sistema OperacionalSistema Operacional

Camada de Adaptação da PlatformaCamada de Adaptação da Platforma

Motor de Execução (MSCOREE.DLL)Motor de Execução (MSCOREE.DLL)

Biblioteca de classes específicas da platformaBiblioteca de classes específicas da platforma

Classes BásicasClasses Básicas

AplicaçãoAplicação

.NET Compact Framework CLR.NET Compact Framework CLR

Dom

ínio

de

Apl

icaç

ões

Dom

ínio

de

Apl

icaç

ões

…RodandoGerenciaGerenciaNativoNativo

Page 5: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

CLR do .NET Compact Framework CLR do .NET Compact Framework

Verificação de tipos na execução Controle de Controle de variáveisvariáveis não inicializadas, não inicializadas,

“casts” inseguros e verificação de indexes “casts” inseguros e verificação de indexes de arrays.de arrays.

Coletor de Lixo / Garbage collection Sem contador de referênciasSem contador de referências

Compilação JIT Sistema comum de tipos

Chamada, herança, depuração em Chamada, herança, depuração em diferentes linguagensdiferentes linguagens

Também tem:Também tem:

Page 6: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

CLR do .NET Compact Framework CLR do .NET Compact Framework

ExceçõesExceções Construtores and DestrutoresConstrutores and Destrutores

IDisposable (Interface de Gerenciamento IDisposable (Interface de Gerenciamento de Recursos)de Recursos)

Debugging Remoto Debugging Remoto Domínio de AplicaçãoDomínio de Aplicação

Aplicação pode iniciar outro processo em Aplicação pode iniciar outro processo em outro domínio de aplicaçãooutro domínio de aplicação

Platform Invocation Services (Platform Invocation Services (P/Invoke)P/Invoke)

Suporta:Suporta:

Page 7: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

CLR do .NET Compact Framework CLR do .NET Compact Framework Compacto?Compacto?

  File Size   Classes Methods

  NETCF Desktop % NETCF Desktop % NETCF Desktop %

“MSCorEE” 400K* 2.2 M 18% N/A N/A N/A N/A N/A N/A

MSCorLib 200K 2M 10% 364 1286 28% 3989 13817 29%

System 100K 1.2M 8% 140 765 18% 1090 6953 16%

System.Drawing 20K 458K 5% 41 254 16% 385 3509 11%

System.Web.Services 67K 503K 13% 54 274 20% 302 2083 14%

System.Windows.Forms 56+55K 2M 5% 43 823 5% 393 11337 3%

System.XML 138K 1.2M 12% 100 724 14% 927 7227 13%

Page 8: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

CLR do .NET Compact Framework CLR do .NET Compact Framework

ASP .NETASP .NET COM InteropCOM Interop

P/Invoke realiza chamadas a DLLs/Win32P/Invoke realiza chamadas a DLLs/Win32 Escrita de objectos COMEscrita de objectos COM

Framework é um subconjunto (cerca de 25%)Framework é um subconjunto (cerca de 25%) RemotingRemoting

Client Web Services é suportadoClient Web Services é suportado Serialização GenéricaSerialização Genérica ReflectionReflection Install-time JIT (nGen)Install-time JIT (nGen)

Não suporta:Não suporta:

Page 9: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

RoteiroRoteiro CLR do .NET Compact FrameworkCLR do .NET Compact Framework .NET para Smart devices (Dispositivos Inteligentes).NET para Smart devices (Dispositivos Inteligentes)

MIT (Mobile Internet Toolkit)MIT (Mobile Internet Toolkit) SDE (Smart Device Extensions)SDE (Smart Device Extensions)

Smart Device Extensions e DesenvolvimentoSmart Device Extensions e Desenvolvimento ConclusãoConclusão ReferênciasReferências

Page 10: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

.NET para Smart devices.NET para Smart devicesVisão da Planaforma de desenvolvimentoVisão da Planaforma de desenvolvimento

Visual Studio .NETVisual Studio .NET

.NET framework.NET framework

ASP.NET Páginas WebASP.NET Páginas Web

Mobile Web Mobile Web browserbrowser

Aplicação Aplicação Server-sideServer-side

Código LocalCódigo Local

.NET compact.NET compactframeworkframework

Aplicação Aplicação Client-sideClient-side

Page 11: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

.NET para Smart devices.NET para Smart devicesMobile Internet Toolkit (MIT)Mobile Internet Toolkit (MIT)

Common Language Runtime (CLR)Common Language Runtime (CLR)

Framework BásicoFramework Básico

Data e XMLData e XML

Web ServicesWeb Services User interfaceUser interface

ASP.NET, Mobile Internet ToolkitASP.NET, Mobile Internet Toolkit

VBVB C++C++ C#C# PerlPerl PythonPython ……

Visual Studio .NETVisual Studio .NET

WindowsWindows

SOAPSOAP

XML Web servicesXML Web services

Páginas Web MoveisPáginas Web Moveis

Web browser MóvelWeb browser Móvel

Device OSDevice OS

Page 12: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

.NET para Smart devices.NET para Smart devicesSmart Device Extensions (SDE)Smart Device Extensions (SDE)

Visual Studio .NETVisual Studio .NET

.NET framework.NET framework

ASP.NET Páginas WebASP.NET Páginas Web

Mobile Web Mobile Web browserbrowser

Aplicação Aplicação Server-sideServer-side

Código LocalCódigo Local

.NET compact.NET compactframeworkframework

Aplicação Aplicação Client-sideClient-side

Page 13: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

.NET For Devices.NET For DevicesSDESDE

.NET compact.NET compactframeworkframework

Device OSDevice OS

Código LocalCódigo Local

SOAPSOAP

XML Web servicesXML Web services

Visual Studio .NETVisual Studio .NET

.NET compact framework.NET compact framework

WindowsWindows

Smart device extensionsSmart device extensions

Page 14: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

.NET para Smart Devices.NET para Smart DevicesMIT versus SDEMIT versus SDEMITMIT

VantagensVantagens Suportado em mais dispositivosSuportado em mais dispositivos Acessado pelo BrowserAcessado pelo Browser MIT controla as difereças entre os dispositivosMIT controla as difereças entre os dispositivos

DesvantagensDesvantagens Não funciona “offline”Não funciona “offline” Não necessita de poder de processamento localNão necessita de poder de processamento local Interface com usuário limitadaInterface com usuário limitada

SDESDE VantagensVantagens

Aplicativos funcionam “online” e “offline”Aplicativos funcionam “online” e “offline” Pode utiliza todos recursos do Pocket PCPode utiliza todos recursos do Pocket PC Excelente integração com SQL ServerExcelente integração com SQL Server™™ CE CE Poder computacional local, gráficos ricos e multimediaPoder computacional local, gráficos ricos e multimedia

DesvantagensDesvantagens Suporte limitadoSuporte limitado

Page 15: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

RoteiroRoteiro CLR do .NET Compact FrameworkCLR do .NET Compact Framework .NET para Smart devices (Dispositivos Inteligentes).NET para Smart devices (Dispositivos Inteligentes)

MIT (Mobile Internet Toolkit)MIT (Mobile Internet Toolkit) SDE (Smart Device Extensions)SDE (Smart Device Extensions)

Smart Device Extensions e DesenvolvimentoSmart Device Extensions e Desenvolvimento ConclusãoConclusão ReferênciasReferências

Page 16: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

Smart Device Extensions (SDE)Smart Device Extensions (SDE)PotencialidadePotencialidade

Desenvolvimento de Aplicações Client-Desenvolvimento de Aplicações Client-side Móveis no Visual Studio .NETside Móveis no Visual Studio .NET Rico e fácilRico e fácil Visual Basic .NET and Visual C# .NETVisual Basic .NET and Visual C# .NET Debugging RemotoDebugging Remoto EmulaçãoEmulação

RAD - RRAD - Rapid Application Developmentapid Application Development Saídas do .NET Compact FrameworkSaídas do .NET Compact Framework

XML, XML Web Services, ADO.NETXML, XML Web Services, ADO.NET Components: Forms e Drawing para AplicaçãoComponents: Forms e Drawing para Aplicação

Page 17: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

Smart Device ExtensionsSmart Device ExtensionsSaídas do .NET Compact FrameworkSaídas do .NET Compact Framework

Compact common language runtime

• Uso Mínimo de recursos

• Independente de Device, CPU e OS

• Performace e tamanho configuraveis

XML, SOAP, UDDIXML, SOAP, UDDI

OSOS

Common Language Runtime (CLR)Common Language Runtime (CLR)

Base frameworkBase framework

Data and XMLData and XML

Web servicesWeb services User interfaceUser interface

VBVB C++C++ C#C# PerlPerl PythonPython ……

Visual Studio.NETVisual Studio.NET Classes seguras e integradas (bibliotecas)• Modelo de Programação Unificado

• Integração entre linguagens

• Desenvolvido para ferramentas

Page 18: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

Smart Device ExtensionsSmart Device Extensions.NET Compact Framework.NET Compact Framework

SystemSystem

System.DataSystem.Data System.XmlSystem.Xml

System.WebSystem.Web

ResourcesResources

RemotingRemotingSerializationSerialization

DescriptionDescriptionDiscoveryDiscoveryProtocolsProtocols

HtmlControlsHtmlControlsWebControlsWebControls

System.DrawingSystem.Drawing

ServiceProcessServiceProcessConfigurationConfiguration

DesignDesign Xslt/XPathXslt/XPath

RuntimeRuntimeInteropServicesInteropServices

SerializationSerialization

ConfigurationConfiguration SessionStateSessionStateCachingCaching

UIUI

ImagingImagingPrintingPrinting

System.WinFormsSystem.WinForms

GlobalizationGlobalizationTextTextSecuritySecurityCollectionsCollections

ReflectionReflectionNetNetIOIO

ThreadingThreadingDiagnosticsDiagnostics

ADO.NETADO.NETSqlServerCeSqlServerCeSqlClientSqlClient XmlDocumentXmlDocument

SecuritySecurity

ServicesServices

Drawing2DDrawing2DTextText

DesignDesign ComponentModelComponentModel

Reader/WritersReader/Writers

Page 19: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

Desenvolvimento no VS .NETDesenvolvimento no VS .NETVisão GeralVisão Geral

Uso de forms do Windows Drag-and-drop e propriedades Subconjunto de controles de desktop

Controles de GUIControles de GUI Entrada de dados (imputs)Entrada de dados (imputs) Telas (frames)Telas (frames)

Formatação e controles RADFormatação e controles RAD Controles organizacionaisControles organizacionais Controles de AjudaControles de Ajuda

Page 20: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

Data entryCheck boxCombo boxCommand buttonDomain up/downList boxNumeric up/downRadio buttonText boxTrack bar

DisplayLabelPicture boxProgress barStatus bar

HelperContext menuScroll barsImage listMain menuOpen and save file dialogsTimerTool bar

Organizational List viewPanelTab control

DesenvolvimentoDesenvolvimentoSubconjunto de controles do desktopSubconjunto de controles do desktop

Não Suportados:Checked list boxData gridDatetime picker

Group boxMonth calendarTree view

Splitter

Page 21: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

ConclusãoConclusão .NET Compact Framework

Ambiente de desenvolvimento integrado e único: Visual Studio .NET

Prove um modelo único para programação de PDA’s e Desktops

Suporta XML Web Services

Page 22: .NET Compact Framework

Gustavo Cabral / Igor Gatis {gflc,ialg}@cin.ufpe.br

Cin / UFPE

Projeto de Compiladores – Prof. André Santos

24/04/23

ReferênciasReferências .NET Compact Framework and SDE

MBL307: Microsoft .NET Compact Framework OverviewMBL307: Microsoft .NET Compact Framework Overview MBL306: Developing Applications Using Visual Studio .NET and .NET MBL306: Developing Applications Using Visual Studio .NET and .NET

Compact FrameworkCompact Framework MBL403: Building Mobile Enterprise Applications with .NET Compact MBL403: Building Mobile Enterprise Applications with .NET Compact

FrameworkFramework Pocket PC and Microsoft Smartphone Native Code

MBL200: Introduction to the Microsoft Smartphone Development PlatformMBL200: Introduction to the Microsoft Smartphone Development Platform MBL305: Cross Platform Programming for the Pocket PC and the MBL305: Cross Platform Programming for the Pocket PC and the

Smartphone 2002Smartphone 2002 MBL304: Programming Pocket PC for Enterprise Applications with MBL304: Programming Pocket PC for Enterprise Applications with

eMbedded Visual ToolseMbedded Visual Tools MBL404: Power Programming Enterprise Applications with MBL404: Power Programming Enterprise Applications with

eMbedded Visual ToolseMbedded Visual Tools Data access

DAT413: SQL Server™ CE: Building Mobile Applications with SQL Server CE DAT413: SQL Server™ CE: Building Mobile Applications with SQL Server CE and Smart Device Extensionsand Smart Device Extensions


Recommended