Descrição

Hoje em dia as tecnologias de informação e comunicação, vulgarmente intituladas como TIC, são um lugar comum em casa, no escritório, na sala de aulas ou mesmo numa conversa de café. Com o advento da Internet, o computador, o instrumento central das TIC, tornou-se uma janela para o mundo, sendo possível obter qualquer tipo de informação à distância de um clique e comunicar remotamente com qualquer pessoa.

A nível profissional, as exigências do mercado obrigam a um acesso em tempo real à informação, factor primordial no sucesso empresarial. Outros factores como a mobilidade, consistência e integração da informação são importantes nesta sociedade global. É neste contexto, que surgem os dispositivos móveis, verdadeiros computadores de bolso, com boas capacidades de processamento, armazenamento e tecnologias de transmissão de dados. A plataforma Windows Mobile vem enriquecer o panorama do mundo móvel ao oferecer aos equipamentos, um conjunto de serviços base essenciais, que disponibilizam ao utilizador final, mecanismos promotores da produtividade, flexibilidade e consistência nos seus processos de trabalho. Neste contexto, estuda-se, na óptica do programador, a plataforma .NET, a sua Framework de desenvolvimento móvel (.NET Compact Framework 3.5), o seu ambiente de desenvolvimento integrado (Visual Studio 2008), a sua linguagem de programação (Visual Basic 9.0) e um conjunto de ferramentas e extensões que permitem a produção célere e consistente de software para equipamentos móveis, nomeadamente o SDK para o Windows Mobile 6.0.

Principais Tópicos Topo

Ao longo do livro são abordados, entre outros, os seguintes temas:

Público Alvo Topo
O(s) Autor(es) Topo

Ricardo Queirós
Licenciado em Informática pelo Instituto Superior de Engenharia do Porto (ISEP) e Mestrado em Informática pela Faculdade de Ciências da Universidade do Porto (FCUP). Exerce a sua actividade como docente na Escola Superior de Estudos Industriais e Gestão (ESEIG), em Vila do Conde, onde é responsável por disciplinas na área das Linguagens e Técnicas de Programação e Bases de Dados. Paralelamente desenvolve actividade científica nas áreas de Integração de Sistemas e de Engenharia de Software no âmbito do Center for Research in Advanced Computing Systems (CRACS), uma unidade de investigação associada ao INESC-Porto.

Índice Top
0. CONSIDERAÇÕES PRÉVIAS 1
0.1 Domínio do livro 1
0.2 Requisitos 2
0.3 Público-alvo 2
0.4 Código fonte 2
0.5 Convenções 3
0.6 Organização do livro 3
0.7 Suporte 5
       
1. INTRODUÇÃO AO WINDOWS MOBILE 7
1.1 Primeiros computadores portáteis 10
1.2 Personal Digital Assistant 12
1.3 Sistemas operativos e plataformas móveis 15
  1.3.1 Primeiras versões do Windows CE 17
  1.3.2 Plataformas Pocket PC e Smartphone 20
  1.3.3 Windows Mobile 23
    1.3.3.1 Windows Mobile 2003 24
    1.3.3.2 Windows Mobile 5.0 24
    1.3.3.3 Windows Mobile 6.0 26
    1.3.3.4 Futuras versões 29
    1.3.3.5 Diferenças entre o Windows CE e o Windows Mobile 31
  1.3.4 Resumo da evolução e estatísticas 33
1.4 Cenários de desenvolvimento 34
       
2. PLATAFORMA MICROSOFT .NET 37
2.1 .NET Compact Framework 41
  2.1.1 Versões 41
  2.1.2 Diferenças em relação à versão desktop 43
  2.1.3 Arquitectura 45
  2.1.4 Common Language Runtime 45
  2.1.5 Linguagem intermédia MSIL e o compilador JIT 47
  2.1.6 Garbage Collection 50
  2.1.7 Interoperabilidade de linguagens e tipos 52
    2.1.7.1 Tipos por valor 53
    2.1.7.2 Tipos por referência 55
    2.1.7.3 Classe System.Object 57
  2.1.8 Assemblies 58
  2.1.9 Biblioteca de classes FCL 59
2.2 Visual Studio 62
  2.2.1 Versões e edições 62
  2.2.2 Características 63
  2.2.3 Instalação 64
  2.2.4 Suporte para a criação de aplicações Windows Mobile 67
       
3. A MINHA PRIMEIRA APLICAÇÃO MOBILE 69
3.1 Criação de um projecto Windows Mobile 70
  3.1.1 Desenho da interface gráfica 73
  3.1.2 Codificação 77
  3.1.3 Distribuição e execução 79
3.2 Organização e configuração do projecto 81
  3.2.1 Solution Explorer 81
  3.2.2 Project Designer 85
       
4. PROGRAMAÇÃO ORIENTADA AOS OBJECTOS 87
4.1 História e enquadramento 89
4.2 Conceitos fundamentais 91
4.3 Encapsulamento 91
  4.3.1 Classes e Objectos 92
  4.3.2 Modificadores de acesso 93
  4.3.3 Campos 94
  4.3.4 Construtores 95
    4.3.4.1 Sobrecarga 96
    4.3.4.2 Por defeito 97
    4.3.4.3 Reutilização 97
  4.3.5 Finalizadores e o padrão Disposable 98
  4.3.6 Constantes 101
  4.3.7 Estáticas 102
  4.3.8 Propriedades 103
  4.3.9 Métodos 105
    4.3.9.1 Passagem de parâmetros 105
    4.3.9.2 Sobrecarga de métodos 106
  4.3.10 Tipos parciais 107
  4.3.11 Namespaces 108
    4.3.11.1 Referências 109
    4.3.11.2 Importações 111
4.4 Reutilização 112
  4.4.1 Herança 114
  4.4.2 Polimorfismo 116
  4.4.2.1 Baseado em herança 116
  4.4.2.2 Baseado em interfaces 119
  4.4.3 Classes Abstractas e Seladas 121
4.5 Class Designer 122
       
5. VISUAL STUDIO E O DESENHO DE INTERFACES 127
5.1 Ambiente de Trabalho 128
  5.1.1 Composição e Configuração 128
    5.1.1.1 Barras de Menus e Ferramentas 129
    5.1.1.2 Janelas de Documentos 131
    5.1.1.3 Janelas de Ferramentas 134
  5.1.2 Navegação e Posicionamento das janelas 135
  5.1.3 Exportação e Importação 138
5.2 Windows Forms 140
  5.2.1 Propriedades de estilo 142
  5.2.2 Gestão e navegação 146
  5.2.3 Herança 146
    5.2.3.1 Criação do form principal 152
    5.2.3.2 Nível de visibilidade dos controlos 154
    5.2.3.3 Criação do form derivado 155
5.3 Windows Forms Controls 158
  5.3.1 Controlos Panel e TabControl 160
  5.3.2 Controlos MonthCalendar e DataTimePicker 162
  5.3.3 Controlo WebBrowser 168
  5.3.4 Controlo LinkLabel 173
  5.3.5 Controlo Splitter 174
5.4 Windows CE Forms Controls 177
  5.4.1 Controlo DocumentList 177
  5.4.2 Controlo Notification 180
  5.4.3 Gestão de input 183
    5.4.3.1 Controlo InputPanel 184
    5.4.3.2 Eventos do Teclado 187
    5.4.3.3 Suporte à Tabulação 188
    5.4.3.4 Controlo HardwareButton 191
    5.4.3.5 Soft keys 193
5.5 Gestão de layout 195
  5.5.1 Desenho de Layout 195
    5.5.1.1 Modos 195
    5.5.1.2 Resumo e Suspensão 197
  5.5.2 Orientações e Resoluções de ecrã 198
    5.5.2.1 Orientação 198
    5.5.2.2 Resolução 205
  5.6 Boas Práticas no desenho de interfaces 207
       
6. TESTE, DEBUGGING E GESTÃO DE ERROS 209
6.1 Emulador 210
  6.1.1 Device Emulator 3.0 210
    6.1.1.1 Principais características 211
    6.1.1.2 Configuração 212
    6.1.1.3Execução 217
  6.1.2 Device Emulator Manager 217
    6.1.2.1 Iniciação 218
    6.1.2.2 Organização 218
    6.1.2.3 Execução de acções 219
    6.1.2.4 Automação 220
    6.1.2.5 Conexão ActiveSync 221
  6.1.3 Cellular Emulator 223
    6.1.3.1 Execução e Associação ao Device Emulator 224
    6.1.3.2 Simulação de conexão GPRS 225
  6.1.4 Verificação do tipo de equipamento 225
6.2 Erros   227
  6.2.1 Erros de compilação 227
  6.2.2 Erros de lógica 231
  6.2.3 Erros de execução 231
6.3 Validação de dados 233
  6.3.1 Eventos de validação 234
  6.3.2 Funções e operadores 236
6.4 Gestão estruturada de erros 237
  6.4.1 Estrutura Try…Catch…Finally 237
  6.4.2 Classe Exception 239
  6.4.3 Hierarquia de excepções 241
    6.4.3.1 Classe SystemException 241
    6.4.3.2 Classe ApplicationException 243
  6.4.4 Propagação de excepções 244
  6.4.5 Métodos de topo e gestão global de excepções 246
  6.4.6 Boas Práticas no tratamento de erros 248
6.5 Testes Unitários 248
  6.5.1 Criação e Execução 249
  6.5.2 Ficheiros de Configuração de Testes 253
6.6 Debugging 255
  6.6.1 Configuração 255
  6.6.2 Sessão de Debugging 256
    6.6.2.1 Controlo de execução 258
    6.6.2.2 Breakpoints simples e condicionais 259
    6.6.2.3 Tracepoints 261
    6.6.2.4 Anexação de processos ao debugger 262
    6.6.2.5 Excepções 264
    6.6.2.6 Janelas de debugging 265
  6.6.3 Ferramentas remotas 267
    6.6.3.1 Remote File Viewer 268
    6.6.3.2 Remote Registry Editor 268
    6.6.3.3 Remote Zoom In 269
    6.6.3.4 Remote Heap Walker 269
    6.6.3.5 Remote Process Viewer 270
    6.6.3.6 Remote Spy 271
6.7 Logging e Avaliação de performance 272
       
7. EMPACOTAMENTO, DISTRIBUIÇÃO E INSTALAÇÃO 275
7.1 Empacotamento 276
  7.1.1 Projecto Smart Device CAB 276
  7.1.2 Global Assembly Cache 280
  7.1.3 Verificação e Instalação da Compact Framework 281
  7.1.4 Assinatura da aplicação e políticas de segurança 284
7.2 Distribuição e Instalação 287
       
8. PERSISTÊNCIA DE DADOS 289
8.1 Ficheiros e Streams 289
  8.1.1 Gestão de pastas e ficheiros 290
  8.1.2 Leitura e escrita de ficheiros 293
    8.1.2.1 Classe FileStream 294
    8.1.2.2 Classes StreamReader e StreamWriter 295
    8.1.2.3 Classes BinaryReader e BinaryWriter 300
8.2 SQL Server Compact 3.5 301
  8.2.1 Instalação 301
  8.2.2 Características 303
  8.2.3 Arquitectura 304
  8.2.4 Usando o SSCE 305
    8.2.4.1 Acesso à origem de dados 305
    8.2.4.2 Criação e estruturação dos dados 308
    8.2.4.3 Adição da fonte de dados ao projecto 310
    8.2.4.4 Classes DataSet e SqlCeResultSet 313
    8.2.4.5 TableAdapter 315
    8.2.4.6 Geração dinâmica de Forms 317
    8.2.4.7 Vinculação de controlos gráficos 320
    8.2.4.8 Criação de uma GUI Master-Detail 323
    8.2.4.9 Consulta a múltiplas tabelas 325
    8.2.4.10 Tratamento de Excepções SSCE 329
8.3 XML   330
  8.3.1 Introdução ao XML e XML Schema 331
  8.3.2 Namespace System.Xml 335
    8.3.2.1 Classe XmlDocument 335
    8.3.2.2 Classes XmlReader e XmlWriter 338
    8.3.2.3 Validação com o XML Schema 340
    8.3.2.4 Pesquisa com XPath 341
    8.3.2.5 Serialização de objectos 344
  8.3.3 XML Web Services 348
    8.3.3.1 Tecnologias associadas 348
    8.3.3.2 Criação de um cliente 349
  8.3.4 Boas práticas no uso do XML 352
       
9. TÓPICOS AVANÇADOS 355
9.1 Gestão de objectos 355
  9.1.1 Codificação 356
    9.1.1.1 Usando o Intellisense 356
    9.1.1.2 Code Snippets 358
  9.1.2 Agrupamento 362
    9.1.2.1 Colecções 362
    9.1.2.2 Genéricos 366
  9.1.3 Acesso 370
    9.1.3.1 Language Integrated Query 370
  9.1.4 Extensão 374
    9.1.4.1 Métodos de extensão 374
    9.1.4.2 Sobrecarga de operadores 375
  9.1.5 Documentação 382
    9.1.5.1 Documentação XML 382
9.2 Programação Multimédia 385
  9.2.1 Introdução 386
  9.2.2 Namespace System.drawing 387
  9.2.3 Formas 389
  9.2.4 Texto 391
    9.2.4.1 Medição e moldagem 392
    9.2.4.2 Rotação 394
  9.2.5 Imagens 397
    9.2.5.1 Desenho de Bitmaps 398
    9.2.5.2 Transparência 402
    9.2.5.3 Desenho de um Splash Screen 403
  9.2.6 Som 407
9.3 Conectividade 407
  9.3.1 Windows Communication Foundation 407
  9.3.2 Comunicação HTTP 409
    9.3.2.1 Classes WebRequest e WebResponse 409
    9.3.2.2 Compressão de dados 411
  9.3.3 Sockets 413
    9.3.3.1 Classe TcpClient 414
    9.3.3.2 Classe TcpListener 415
  9.3.4 GPS 417
  9.3.5 Infravermelhos 420
  9.3.6 Bluetooth e Wi-Fi 422
       
10. USANDO O SDK WINDOWS MOBILE 6 425
10.1 Chamadas telefónicas 426
10.2 Configuração do dispositivo 427
10.3 Janelas de diálogo 429
  10.3.1 Classe CameraCaptureDialog 430
  10.3.2 Classe SelectPictureDialog 431
  10.3.3 Classe ChooseContactDialog 433
10.4 Pocket Outlook 435
  10.4.1 Classe Appointment 438
    10.4.1.1 Lembretes 440
    10.4.1.2 Receptores 441
    10.4.1.3 Recorrência 443
  10.4.2 Classe Task 445
  10.4.3 Classe Contact 447
  10.4.4 Messaging 449
    10.4.4.1 Classe EmailMessage 449
    10.4.4.2 Classe SmsMessage 453
    10.4.4.3 Intercepção de mensagens SMS 455
10.5 Estado e notificações 460
       
ÍNDICE REMISSIVO 465
       
Páginas online Topo
Download Topo

Obtenha aqui o material complementar do livro.

Use como "Username" a primeira palavra a verde no texto da contracapa do seu livro.
Use como "Password" a última palavra de texto da página 294 do seu livro.

Nota : As palavras deverão ser inseridas em minúsculas e sem acentos, excluindo-se para a sua selecção o título da obra, os logótipos (da colecção e outros), endereços web e o nome dos autores.

Username :
Password :