Você está na página 1de 16

Distribuio

Lidel edies tcnicas, lda

SEDE:
R. D. Estefnia, 183, R/C Dto., 1049-057 LISBOA
Internet: 21 354 14 18 livrarialx@lidel.pt / Revenda: 21 351 14 43 revenda@lidel.pt
Formao/Marketing: 21 351 14 48 formacao@lidel.pt / marketing@lidel.pt
Ens. Lnguas/Exportao: 21 351 14 42 depinternacional@lidel.pt
Fax: 21 352 26 84
LIVRARIA:
Av. Praia da Vitria, 14 1000-247 LISBOA Tel.: 21 354 14 18, e-mail: livrarialx@lidel.pt

Copyright janeiro de 2013


FCA Editora de Informtica, Lda.
ISBN: 978-972-722-754-9
Capa: Emlia Calada
Impresso e acabamento: Tipografia Lousanense, Lda. Lous
Depsito Legal N. 353047/12
Livro segundo o Novo Acordo Ortogrfico

Os nomes comerciais referenciados neste livro tm patente registada

Marcas Registadas de FCA Editora de Informtica, Lda.

Este pictograma merece uma explicao. O seu propsito alertar o leitor para a ameaa que
representa para o futuro da escrita, nomeadamente na rea da edio tcnica e universitria, o
desenvolvimento massivo da fotocpia.
O Cdigo do Direito de Autor estabelece que crime punido por lei, a fotocpia sem autorizao
dos proprietrios do copyright. No entanto, esta prtica generalizou-se sobretudo no ensino
superior, provocando uma queda substancial na compra de livros tcnicos. Assim, num pas em
que a literatura tcnica to escassa, os autores no sentem motivao para criar obras inditas
e faz-las publicar, ficando os leitores impossibilitados de ter bibliografia em portugus.
Lembramos portanto, que expressamente proibida a reproduo, no todo ou em parte, da
presente obra sem autorizao da editora.

NDICE GERAL
AGRADECIMENTOS .............................................................................................. XV
PREFCIO...................................................................................................... XVII
0. INTRODUO ................................................................................................... 1

0.1
0.2
0.3
0.4
0.5
0.6

O que posso encontrar neste livro ................................................................................... 1


Requisitos ............................................................................................................................ 1
A quem se dirige este livro? ............................................................................................. 2
Cdigo e samples ................................................................................................................. 2
Convenes ......................................................................................................................... 3
Organizao do livro ......................................................................................................... 3
0.6.1 Captulo 1: Introduo s Windows Store Apps................................................... 3
0.6.2 Captulo 2: Controlos ............................................................................................. 3
0.6.3 Captulo 3: Layouts, Vistas e Navegao ............................................................. 4
0.6.4 Captulo 4: Input ..................................................................................................... 4
0.6.5 Captulo 5: Ficheiros .............................................................................................. 4
0.6.6 Captulo 6: Data Binding ........................................................................................ 4
0.6.7 Captulo 7: Networking ........................................................................................... 4
0.6.8 Captulo 8: Tiles, Badges e Toasts ........................................................................... 5
0.6.9 Captulo 9: Contratos ............................................................................................. 5
0.6.10 Captulo 10: Multimdia ....................................................................................... 5
0.6.11 Captulo 11: Perifricos e Sensores ...................................................................... 5
0.6.12 Captulo 12: Animaes ........................................................................................ 6
0.6.13 Captulo 13: Aplicaes ......................................................................................... 6
0.7 Suporte ................................................................................................................................. 6

1. INTRODUO S WINDOWS STORE APPS ............................................................... 7

1.1 Uma visita guiada nova interface grfica .................................................................... 7


1.1.1 Introduo ao ecr inicial ...................................................................................... 7
1.1.2 Introduo s aplicaes Windows Store ........................................................... 10
1.2 Ambiente de runtime e SDK............................................................................................ 19
1.2.1 WinRT e metadata ................................................................................................ 21
1.3 Anatomia de um projeto WinRT .................................................................................... 22
1.3.1 Design de uma aplicao ..................................................................................... 37
2. CONTROLOS .................................................................................................. 39

2.1 Introduo aos controlos ................................................................................................. 39


2.2 Controlos intrnsecos ....................................................................................................... 39
FCA Editora de Informtica

VIII

DESENVOLVIMENTO EM WINDOWS 8

2.2.1 Estilos predefinidos ............................................................................................. 41


2.2.2 Interao a partir de JavaScript ........................................................................... 50
2.3 Controlos WinJS................................................................................................................ 52
2.3.1 Rating ..................................................................................................................... 53
2.3.1.1 Abordagem imperativa ........................................................................ 63
2.3.2 DatePicker e TimePicker ..................................................................................... 64
2.3.3 ToggleSwitch......................................................................................................... 66
2.3.4 FlipView ................................................................................................................ 66
2.3.4.1 Outras propriedades, mtodos e eventos ......................................... 72
2.3.4.2 Estilos CSS.............................................................................................. 73
2.3.5 ListView ................................................................................................................. 73
2.3.5.1 Agrupamento de itens ......................................................................... 79
2.3.5.2 Carregamentos de dados ..................................................................... 84
2.3.5.3 Seleo de itens ..................................................................................... 86
2.3.5.4 Observaes finais ................................................................................ 88
2.3.6 SemanticZoom ...................................................................................................... 89
2.3.7 Flyout ..................................................................................................................... 92
2.3.8 MessageDialog...................................................................................................... 95
2.3.9 AppBar ................................................................................................................... 97
2.3.9.1 Personalizao do aspeto dos comandos ........................................ 103
2.3.9.2 Modificao dos comandos apresentados em runtime .................. 104
2.3.9.3 Personalizao do layout .................................................................... 106
2.3.9.4 Observaes finais .............................................................................. 108
2.3.10 Menu .................................................................................................................... 108
2.3.11 PopupMenu .......................................................................................................... 111
2.3.12 Tooltip .................................................................................................................. 114
2.3.13 SettingsPane ........................................................................................................ 115
2.3.14 HtmlControl ........................................................................................................ 115
2.3.15 Page ...................................................................................................................... 116
3. LAYOUTS, VISTAS E NAVEGAO ...................................................................... 117

3.1 Layouts .............................................................................................................................. 117


3.1.1 Flexible Box ........................................................................................................... 117
3.1.2 Grid ....................................................................................................................... 121
3.1.3 Multicolumn ......................................................................................................... 124
3.1.4 Regies CSS3 ....................................................................................................... 126
3.2 Vistas ................................................................................................................................ 129
3.2.1 Media queries ........................................................................................................ 130
3.2.2 Adaptao atravs do tratamento de eventos ............................................... 131
3.2.2.1 Snapping ................................................................................................ 132
3.2.2.2 Orientao do ecr .............................................................................. 135
FCA Editora de Informtica

NDICE GERAL

IX

3.3 Navegao ....................................................................................................................... 138


3.3.1 Navegao bsica ............................................................................................... 138
3.3.1.1 Contexto local vs. contexto Web ........................................................ 142
3.3.1.2 Navegao entre pginas internas e externas ................................ 144
3.3.2 Controlo HtmlControl ....................................................................................... 144
3.3.3 Fragmentos .......................................................................................................... 144
3.3.3.1 Funcionamento interno dos fragmentos ......................................... 148
3.3.4 Controlo Page ..................................................................................................... 150
3.3.4.1 Mtodo render ..................................................................................... 152
3.3.4.2 Instanciao como controlo ............................................................... 153
3.3.4.3 Ciclo de vida de um controlo Page .................................................. 155
3.3.5 Suporte navegao .......................................................................................... 161
3.3.5.1 Navegao com fragmentos .............................................................. 161
3.3.5.2 Navegao com controlos Page ........................................................ 167
4. INPUT ....................................................................................................... 171

4.1 Interao com o utilizador ............................................................................................ 171


4.1.1 Desenho baseado no toque (touch) .................................................................. 171
4.1.2 Experincia com base no toque (touch) ........................................................... 172
4.1.3 Windows 8 Touch Language ................................................................................ 173
4.1.4 Teclado e rato num desenho baseado no toque ............................................ 175
4.2 Identificao de dispositivos ........................................................................................ 176
4.2.1 Deteo do rato ................................................................................................... 177
4.2.2 Deteo do teclado ............................................................................................. 177
4.2.3 Deteo de toque ................................................................................................ 178
4.2.4 Deteo de dispositivos do tipo pointer .......................................................... 178
4.3 Exemplos prticos: desenhar para o toque................................................................. 180
4.3.1 Scrolling, panning e zooming ............................................................................... 180
4.3.1.1 Snappoints ............................................................................................. 182
4.3.1.2 Zooming ................................................................................................. 185
4.3.2 Pointers ................................................................................................................. 186
4.3.2.1 Integrao com scrolling e zooming ................................................... 189
4.3.3 Gestos (Gestures) ................................................................................................. 194
4.3.3.1 Eventos do tipo static gestures ........................................................... 195
4.3.3.2 Eventos do tipo dynamic gestures ...................................................... 195
4.3.3.3 Cenrios avanados: GestureRecognizer ........................................ 199
5. FICHEIROS.................................................................................................. 205

5.1 Introduo aos ficheiros em WinRT ............................................................................ 205


5.1.1 Zonas de acesso a ficheiros ............................................................................... 206
5.1.2 API de acesso ...................................................................................................... 207
FCA Editora de Informtica

DESENVOLVIMENTO EM WINDOWS 8

5.1.3 StorageFile e StorageFolder .............................................................................. 208


5.2 Acesso a ficheiros ........................................................................................................... 208
5.2.1 Acesso de dados zona app data ...................................................................... 209
5.2.1.1 Definies da aplicao ...................................................................... 215
5.2.1.2 Definies da aplicao parte II ..................................................... 218
5.2.2 Acesso de ficheiros em libraries ........................................................................ 222
5.2.2.1 Agrupamento por lbum ................................................................... 226
5.2.2.2 Filtragem por gnero .......................................................................... 228
5.2.2.3 Msicas de um lbum ........................................................................ 231
5.2.2.4 E a msica, toca? ................................................................................. 234
5.2.3 Pickers ................................................................................................................... 236
5.2.3.1 Gravao de ficheiros ......................................................................... 238
5.2.3.2 Pastas .................................................................................................... 240
5.2.3.3 Future-access list (FAL)........................................................................ 240
5.2.3.4 Most-recently used list (MRU) ............................................................. 243
5.2.4 Download e upload de ficheiros .......................................................................... 245
5.3 File Open Picker Contract ................................................................................................ 252
5.3.1 File Save Picker Contract ...................................................................................... 263
5.4 Associao de ficheiros e AutoPlay .............................................................................. 265
5.4.1 Associao de uma aplicao a um tipo de ficheiro ..................................... 268
5.4.2 AutoPlay ............................................................................................................... 272
6. DATA BINDING ............................................................................................ 281

6.1 Introduo ao data binding ............................................................................................ 281


6.2 Data binding declarativo ................................................................................................ 281
6.2.1 Atualizao de dados ........................................................................................ 284
6.2.2 Inicializadores ..................................................................................................... 285
6.2.3 Conversores......................................................................................................... 287
6.2.4 Criao de objetos observveis ........................................................................ 288
6.3 Binding bidirecional ....................................................................................................... 290
6.4 Binding programtico..................................................................................................... 291
6.4.1 Notificao de alteraes................................................................................... 292
6.5 Templates .......................................................................................................................... 293
6.5.1 Renderizao de vrios templates ..................................................................... 295
6.6 Objetos data source .......................................................................................................... 296
6.6.1 Configurao dos servios da Google .............................................................. 298
6.6.2 Construo do objeto data source ...................................................................... 300
7. NETWORKING .............................................................................................. 307

7.1 A rede e o manifesto de uma aplicao ...................................................................... 307


7.2 Deteo de rede .............................................................................................................. 309
FCA Editora de Informtica

NDICE GERAL

7.3

7.4
7.5
7.6
7.7

7.8

XI

7.2.1 Perfil de ligao rede ...................................................................................... 309


7.2.1.1 Estatsticas de uso local ...................................................................... 317
7.2.2 Deteo de ligao rede .................................................................................. 318
Interao com Web services ............................................................................................ 320
7.3.1 Evitar o caching ................................................................................................... 325
7.3.2 Timeouts ................................................................................................................ 326
Syndication ....................................................................................................................... 326
7.4.1 Modificao de uma feed ................................................................................... 329
Autenticao com WebAuthenticationBroker ........................................................... 337
Servios Live .................................................................................................................... 342
Sockets ............................................................................................................................... 345
7.7.1 TCP vs. UDP ........................................................................................................ 346
7.7.2 Tipos de sockets ................................................................................................... 346
7.7.3 Informao estatstica ........................................................................................ 347
7.7.4 Streamsocket: Um exemplo prtico ................................................................... 348
7.7.5 DatagramSocket ................................................................................................. 357
7.7.6 Web Sockets ........................................................................................................... 361
7.7.7 Ligao de proximidade .................................................................................... 363
Transferncia de dados em background ....................................................................... 363

8. TILES, BADGES E TOASTS ............................................................................... 365

8.1 Tiles ................................................................................................................................... 365


8.1.1 Tile predefinido ................................................................................................... 367
8.1.2 Envio de notificaes ......................................................................................... 369
8.1.2.1 Envio de notificaes para diferentes tipos de tile ......................... 371
8.1.2.2 Uso de imagens em notificaes ....................................................... 372
8.1.2.3 Pilha de notificaes ........................................................................... 374
8.1.2.4 Tempo de vida de uma notificao .................................................. 376
8.1.2.5 Uso de tags ........................................................................................... 376
8.1.2.6 Notificaes peridicas ...................................................................... 376
8.1.2.7 Notificaes calendarizadas .............................................................. 377
8.1.2.8 Notificaes push ................................................................................. 378
8.1.3 Tile secundrio .................................................................................................... 387
8.1.3.1 Enumerar tiles ...................................................................................... 391
8.1.3.2 Envio de notificaes .......................................................................... 391
8.1.3.3 Ativao de uma aplicao................................................................ 393
8.2 Badges ............................................................................................................................... 394
8.2.1 Tempo de vida de um badge ............................................................................. 396
8.2.2 Notificaes peridicas...................................................................................... 397
8.2.3 Notificaes push ................................................................................................ 397
8.2.4 Tiles secundrios ................................................................................................. 398
FCA Editora de Informtica

XII

DESENVOLVIMENTO EM WINDOWS 8

8.3 Toasts ................................................................................................................................ 398


8.3.1 Gerao de um toast ........................................................................................... 399
8.3.2 Sons usados nos toasts ....................................................................................... 401
8.3.3 Parmetros de ativao ..................................................................................... 403
8.3.4 Notificaes calendarizadas ............................................................................. 404
8.3.5 Notificaes push ................................................................................................ 405
8.4 Lock Screen........................................................................................................................ 405
8.4.1 Declarao da inteno de usar o lock screen .................................................. 407
8.4.2 Background tasks .................................................................................................. 407
8.4.3 Personalizao da aplicao no lock screen ..................................................... 408
9. CONTRATOS ................................................................................................ 411

9.1 Introduo aos contratos ............................................................................................... 411


9.2 Background tasks .............................................................................................................. 413
9.2.1 Exemplo prtico.................................................................................................. 418
9.3 Contact Picker ................................................................................................................... 424
9.4 Search ................................................................................................................................ 432
9.5 Settings ............................................................................................................................. 443
9.6 Share target ....................................................................................................................... 448
9.6.1 Aplicao-fonte ................................................................................................... 451
9.6.2 Aplicao-alvo .................................................................................................... 456
10. MULTIMDIA ............................................................................................. 463

10.1
10.2
10.3
10.4
10.5

Introduo multimdia .......................................................................................... 463


Introduo ao vdeo e ao udio ............................................................................... 464
Play to ........................................................................................................................... 470
Efeitos .......................................................................................................................... 472
Mdia em background ................................................................................................. 473
10.5.1 Competio pelo som ................................................................................. 477
10.6 Media Controls ............................................................................................................. 478
10.7 Reproduo Stereo 3D................................................................................................ 480
10.8 DRM ............................................................................................................................. 481
10.9 Captura de imagem e de som .................................................................................. 482
10.9.1 MediaCapture ............................................................................................... 486
10.9.1.1 Definies de captura ................................................................. 491
10.9.1.2 Rotao ......................................................................................... 495
10.9.1.3 Mirroring ...................................................................................... 496
10.9.1.4 Aplicao de efeitos .................................................................... 497
10.9.1.5 udio ............................................................................................ 498
10.10 Transcoding .................................................................................................................. 498
10.10.1 Converso de formato ................................................................................ 498

FCA Editora de Informtica

NDICE GERAL

XIII

10.10.2 Trimming ....................................................................................................... 502


10.11 Imagens ........................................................................................................................ 505
10.11.1 Escrita de metadatada ................................................................................ 508
10.11.2 Modificao dos pxeis ............................................................................... 510
10.11.3 Aplicao de efeitos extra .......................................................................... 513
11. PERIFRICOS E SENSORES ............................................................................ 517

11.1 Introduo aos dispositivos externos ..................................................................... 517


11.1.1 Enumerao de dispositivos ...................................................................... 518
11.1.1.1 Enumerao de outros dispositivos ......................................... 522
11.1.1.2 Enumerao ativa de dispositivos ....................................... 524
11.1.1.3 Enumerao de dispositivos PnP ............................................. 528
11.2 Impresso .................................................................................................................... 530
11.2.1 Impresso bsica .......................................................................................... 530
11.2.2 Definies predefinidas no preview de impresso .................................. 533
11.2.3 Definies personalizadas no preview de impresso .............................. 535
11.2.4 Impresso alternativa.................................................................................. 537
11.3 Sensores de orientao e de movimento ................................................................ 538
11.3.1 Acelermetro ................................................................................................ 538
11.3.2 Inclinmetro ................................................................................................. 541
11.3.3 Girmetro ...................................................................................................... 542
11.3.4 Compasso ...................................................................................................... 543
11.3.5 Sensor de orientao.................................................................................... 544
11.4 Sensores de luz ........................................................................................................... 545
11.5 Geolocalizao ............................................................................................................ 545
11.5.1 Deteo da atualizao da localizao...................................................... 549
11.6 SMS .............................................................................................................................. 550
11.6.1 Mensagens recebidas ................................................................................... 554
11.6.2 Notificao de mensagem recebida em background ................................ 556
12. ANIMAES .............................................................................................. 559

12.1 Introduo s animaes .......................................................................................... 559


12.2 Biblioteca de animao.............................................................................................. 561
12.2.1 Navegao entre pginas ............................................................................ 561
12.2.2 Contedos ..................................................................................................... 564
12.2.3 Elementos suplementares da UI ................................................................ 568
12.2.4 Colees ......................................................................................................... 573
12.2.5 Cenrios de seleo...................................................................................... 576
12.3 Observaes finais ..................................................................................................... 579
13. APLICAES .............................................................................................. 581

FCA Editora de Informtica

XIV

DESENVOLVIMENTO EM WINDOWS 8

13.1 Ciclo de vida de uma aplicao ............................................................................... 581


13.1.1 Ativao de aplicaes ................................................................................ 585
13.1.1.1 Splash Screen ................................................................................. 591
13.1.2 Suspenso de aplicaes ............................................................................. 595
13.1.3 Resumo de aplicaes ................................................................................. 596
13.2 Globalizao e localizao de aplicaes ............................................................... 596
13.2.1 Recursos em markup .................................................................................... 597
13.2.2 Recursos em JavaScript ................................................................................ 600
13.2.3 Recursos provenientes de outros ficheiros .............................................. 601
13.2.4 Localizao de imagens .............................................................................. 602
13.2.5 Recursos no manifesto ................................................................................ 605
13.2.6 Refrescamento da cultura usada ............................................................... 606
13.2.7 Operaes de data binding ........................................................................... 607
13.2.8 Escolha programtica da linguagem ........................................................ 607
13.2.9 Indicao explcita da lngua usada num recurso .................................. 609
13.2.10 Recursos no contexto Web........................................................................... 609
13.2.11 Observaes finais sobre globalizao ..................................................... 612
13.3 Debugging de aplicaes ............................................................................................ 615
13.4 Packaging ...................................................................................................................... 619
13.5 Windows Store.............................................................................................................. 623
13.5.1 Verificaes pr-publicao ....................................................................... 625
BIBLIOGRAFIA ................................................................................................. 627
NDICE REMISSIVO ........................................................................................... 629

FCA Editora de Informtica

INTRODUO

O Windows 8 a ltima evoluo do sistema operativo cliente Windows desenvolvido pela


Microsoft. Uma das suas principais novidades a introduo de uma nova shell grfica,
inicialmente designada por Metro. Esta nova interface reutiliza a linguagem visual
caracterstica do Windows Phone e suportada por uma nova plataforma, designada por
WinRT, que estar disponvel numa panplia de dispositivos, desde o tradicional PC
(Personal Computer) at ao tablet. Na prtica, isto significa que as aplicaes construdas
sobre a plataforma WinRT podem correr em todos os dispositivos onde o Windows 8
estiver instalado. Estamos, portanto, perante aquele que ser o marco mais importante da
Microsoft desde o lanamento do Windows 95.

0.1

O QUE POSSO ENCONTRAR NESTE LIVRO

Neste livro, optmos por recorrer ao HTML5 e ao JavaScript para apresentar


muitas das funcionalidades disponibilizadas pela plataforma WinRT que podem ser
usadas na construo de aplicaes Windows Store. Muitas destas funcionalidades so
ilustradas atravs de vrios exemplos prticos, que se concentram em apresentar
estratgias e boas prticas associadas ao seu uso. Todos estes exemplos podem ser
obtidos gratuitamente, a partir do site da editora FCA (http://www.fca.pt).

0.2

REQUISITOS

A utilizao do cdigo que acompanha este livro pressupe o uso do sistema


operativo Windows 8. Para alm disso, o livro parte do princpio de que o leitor possui
alguns conhecimentos sobre o desenvolvimento de aplicaes Web. Por outras palavras,
presume-se que o leitor possui alguns conhecimentos bsicos sobre elementos HTML,
aplicao de estilos CSS e uso de JavaScript.
Apesar de todo o cdigo ter sido escrito com o Visual Studio 2012, na verdade, as
ferramentas Express (que podem ser obtidas gratuitamente a partir de
http://bit.ly/JLvqFA) so mais do que suficientes para criar e compilar as vrias aplicaes
apresentadas ao longo do livro.
FCA Editora de Informtica

DESENVOLVIMENTO EM WINDOWS 8

Praticamente todas as aplicaes criadas ao longo do livro podem ser executadas


num PC ou no simulador Windows 8. Existem, contudo, alguns (poucos) exemplos que
pressupem o acesso a determinados dispositivos que podem no existir num PC
tradicional. Por exemplo, a API (Application Programming Interface) de SMS um desses
casos e s pode ser testada num PC que possua um adaptador de rede mvel.

0.3

A QUEM SE DIRIGE ESTE LIVRO?

Este livro dirigido a todos os leitores interessados em criar aplicaes Windows


Store para Windows 8 atravs de HTML e JavaScript. especialmente adequado aos
leitores que se esto a iniciar, mas tambm suficientemente abrangente para poder ser
usado como referncia por aqueles que j possuem alguns conhecimentos bsicos sobre a
plataforma e que procuram aprofund-los.
Neste livro, optmos por construir as aplicaes atravs de HTML5 e JavaScript
por duas razes essenciais. Em primeiro lugar, porque o uso destas linguagens uma das
grandes novidades associadas ao desenvolvimento de aplicaes Windows Store. Para
alm disso, a utilizao destas tecnologias permite ao programador com experincia no
desenvolvimento de aplicaes Web reutilizar muitos dos conhecimentos obtidos nessa
rea. Com a exploso que a Web teve nos ltimos anos, parece-nos que o uso de HTML5 e
JavaScript a opo que permite satisfazer o maior nmero de pessoas interessadas no
desenvolvimento de aplicaes deste tipo.
Convm ainda referir que muitos dos conceitos apresentados neste livro so
transversais s vrias linguagens que podem ser usadas na construo de aplicaes
Windows Store. Na prtica, isso significa que a transposio do cdigo JavaScript,
apresentado em vrios dos exemplos, para outra linguagem no deve oferecer muitas
dificuldades ao leitor interessado em usar outra linguagem no desenvolvimento deste
tipo de aplicaes.

0.4

CDIGO E SAMPLES

Todas as aplicaes que acompanham este livro foram construdas com o Visual
Studio 2012. Apesar de o uso deste IDE (Integrated Development Environment) ser
recomendado, na verdade, o leitor dever ser capaz de utilizar o Visual Studio Express
para criar ou compilar todas as aplicaes apresentadas no livro. O leitor interessado
pode obter todo o cdigo que acompanha este livro a partir do site da editora FCA
(http://www.fca.pt).

FCA Editora de Informtica

INTRODUO

0.5

CONVENES

Ao longo do livro, optou-se por seguir um conjunto de convenes que devem


facilitar a interpretao do texto e do cdigo. Assim, todos os excertos de cdigo so
apresentados com a formatao que se segue:
<TextBlock Text=Ol, mundo! />

var c = 10;

O carter  usado para indicar que a linha atual no deve ser dividida em duas
linhas (essa diviso ocorreu apenas porque a pgina fsica do livro no possui o espao
suficiente para apresentar numa nica linha). Todas as notas e observaes importantes
podero ser encontradas no interior de uma seco semelhante seguinte:
Nota importante sobre um tpico.

0.6

ORGANIZAO DO LIVRO

O livro est dividido em vrios captulos e pode ser lido sequencialmente, levando o leitor numa viagem, que comea com uma breve apresentao sobre algumas das
caractersticas marcantes da nova shell grfica para, em seguida, se debruar sobre vrias
das funcionalidades mais importantes introduzidas pela plataforma WinRT. Por outro
lado, este livro tambm pode ser usado como referncia, permitindo, assim, a leitura
desordenada dos captulos que mais interessam ao leitor num determinado momento.

0.6.1

CAPTULO 1: INTRODUO S WINDOWS STORE APPS

Este captulo comea por efetuar uma visita guiada ao novo ecr inicial disponibilizado pelo sistema operativo Windows 8. Introduzimos ainda a plataforma WinRT e os
seus principais componentes e encerramos o captulo com o estudo da anatomia de um
projeto WinRT criado com HTML5 e JavaScript.

0.6.2

CAPTULO 2: CONTROLOS

Os controlos desempenham um papel fundamental nas aplicaes Windows Store.


Neste captulo, comeamos por analisar o uso de alguns controlos HTML intrnsecos
para, em seguida, apresentarmos detalhadamente os controlos Windows Store disponibilizados pela biblioteca WinJS.

FCA Editora de Informtica

0.6.3

DESENVOLVIMENTO EM WINDOWS 8

CAPTULO 3: LAYOUTS, VISTAS E NAVEGAO

Neste captulo, analisamos vrias estratgias associadas disposio de controlos


numa pgina de uma aplicao Windows Store. O captulo apresenta ainda vrias
funcionalidades disponibilizadas pela plataforma, que permitem ajustar a vista atual, e
termina com uma abordagem aprofundada ao mdulo de navegao, que pode ser usado
numa aplicao WinRT construda com HTML5 e JavaScript.

0.6.4

CAPTULO 4: INPUT

A introduo de dados desempenha um papel importante na construo de


aplicaes Windows Store. Para alm do suporte melhorado aos dispositivos tradicionais
(rato e teclado), toda a plataforma foi desenhada a pensar no uso do toque. por isso que
este captulo se concentra em mostrar o papel fundamental do uso do toque no desenho
da plataforma e quais as principais consequncias que advieram dessa escolha.

0.6.5

CAPTULO 5: FICHEIROS

O acesso a ficheiros e pastas constitui uma das principais funcionalidades


disponibilizadas por um sistema operativo. Este captulo dedica-se apresentao da API
disponibilizada pela plataforma que nos permite interagir com o sistema de ficheiros.
Para alm das operaes bsicas, o captulo apresenta os princpios associados ao uso e
implementao de pickers e mostra como podemos adicionar AutoPlay ou associar
ficheiros a uma aplicao.

0.6.6

CAPTULO 6: DATA BINDING

Nos dias que correm, a apresentao de dados um aspeto fundamental que


transversal a todas as aplicaes. Neste captulo, apresentamos vrias funcionalidades
disponibilizadas pela plataforma que simplificam o cdigo necessrio apresentao de
dados e manuteno de sincronismo entre os objetos que fornecem esses dados e os
controlos que os apresentam.

0.6.7

CAPTULO 7: NETWORKING

Hoje em dia, o acesso a dados provenientes de diversas origens um dos


requisitos comuns a muitas aplicaes. Neste captulo, analisamos os vrios objetos
disponibilizados pela plataforma que definem a chamada stack de rede. Para alm de
analisarmos as classes de baixo nvel que simplificam o cdigo necessrio obteno de
FCA Editora de Informtica

INTRODUO

uma feed ou invocao de um Web service remoto, discutimos o uso de Sockets e as


vantagens inerentes ao novo conceito de perfil de rede.

0.6.8

CAPTULO 8: TILES, BADGES E TOASTS

Nunca como agora foi to fcil fornecer informao ao utilizador sobre uma
determinada tarefa que est a ser desempenhada por uma aplicao quando esta est em
background. Neste captulo, comeamos por analisar o papel desempenhado pelos tiles
para, em seguida, abordarmos o uso de badges e de toasts. O captulo no termina sem
apresentar algumas consideraes importantes sobre como podemos usar o lock screen
para fornecer feedback ao utilizador final.

0.6.9

CAPTULO 9: CONTRATOS

Os contratos e as extenses permitem estandardizar vrias funcionalidades


consideradas importantes e comuns a muitas aplicaes. Neste captulo, abordamos este
tpico e apresentamos vrios exemplos da implementao dos contratos disponibilizados
pela plataforma WinRT.

0.6.10 CAPTULO 10: MULTIMDIA


A adio de vdeo, udio e imagem desempenha cada vez um papel mais
importante no desenvolvimento de aplicaes. Ao longo deste captulo, apresentamos
vrias das funcionalidades existentes que permitem a adio de multimdia a uma
aplicao.

0.6.11 CAPTULO 11: PERIFRICOS E SENSORES


Neste captulo, analisamos o cdigo necessrio interao com alguns dos
perifricos mais comuns que podem ser ligados a um dispositivo que corre o Windows 8.
Depois de apresentarmos o cdigo necessrio impresso, abordamos ainda o uso de
vrios sensores numa aplicao. O captulo termina com uma apresentao sobre o uso
de geolocalizao e com outra sobre as principais caractersticas disponibilizadas pela
API de SMS.

FCA Editora de Informtica

DESENVOLVIMENTO EM WINDOWS 8

0.6.12 CAPTULO 12: ANIMAES


A construo de aplicaes fluidas e atrativas um dos principais pressupostos
associados s aplicaes Windows Store. Neste captulo, vemos como podemos recorrer s
vrias animaes disponibilizadas pela plataforma para tornar as nossas aplicaes ainda
mais fluidas, contribuindo, assim, para uma melhoria da sua usabilidade.

0.6.13 CAPTULO 13: APLICAES


O livro termina com a apresentao de vrias funcionalidades que sero transversais a muitas aplicaes. Assim, o captulo comea por apresentar as principais fases
que constituem o ciclo de vida de uma aplicao Windows Store para, em seguida, se
concentrar na globalizao de aplicaes. O captulo apresenta ainda algumas
consideraes sobre o uso de debugging e sobre os passos necessrios distribuio de
aplicaes (packaging), encerrando com uma breve introduo Windows Store.

0.7

SUPORTE

Este livro foi escrito sobre a verso RTM (Release To Manufacturing) do Windows 8.
Se, por acaso, o leitor encontrar informao que lhe parea incorreta ou se tiver sugestes
em relao ao contedo, no hesite e envie um e-mail com as suas questes para
labreu@gmail.com. Eventuais atualizaes e erratas sero publicadas no site da editora
FCA, em http://www.fca.pt.

FCA Editora de Informtica

Você também pode gostar