Programming the Windows Runtime by Example - Jeremy Likness, John Garland

Programming the Windows Runtime by Example

A Comprehensive Guide to WinRT with Examples in C# and XAML
Buch | Softcover
816 Seiten
2014
Addison-Wesley Educational Publishers Inc (Verlag)
978-0-321-92797-2 (ISBN)
51,25 inkl. MwSt
  • Titel ist leider vergriffen;
    keine Neuauflage
  • Artikel merken
Master Windows 8.1/Windows Runtime Programming Through 80 Expert Projects
This is the most complete, hands-on, solutions-focused guide to programming modern Windows applications with the Windows Runtime.

Leading Windows development consultants Jeremy Likness and John Garland present easy-to-adapt C# and XAML example code for more than 80 projects. Their real-world application examples help you apply Windows 8.1’s best improvements, including large tiles, the new search control, flyouts, command bars, native WinRT networking, and new deployment and sideloading options.

Drawing on their pioneering experience, they illuminate key areas of the Windows Runtime API, offering uniquely detailed coverage of encryption, cloud connectivity, devices, printers, and media integration. You’ll find cutting-edge tips and tricks available in no other book.

This is an indispensable resource for all intermediate-to-advanced Windows developers, and for any architect building desktop, tablet, or mobile solutions with Microsoft technologies. Its focus on both C# and XAML will make it valuable to millions of Windows developers already familiar with Silverlight, WPF, and/or .NET.

Coverage includes
• Creating robust app interfaces with the newest XAML controls, including flyouts and command bars
• Saving data in a persistent “roaming zone” for syncing across Windows 8.1 devices
• Using Visual State Manager (VSM) to build apps that adapt to various device resolutions and orientations
• Integrating virtually any form of data into your apps
• Connecting with web services, RSS, Atom feeds, and social networks
• Securing apps via authentication, encrypting, signing, and single sign-on with Microsoft Account, Facebook, Google, and more
• Leveraging Windows 8.1 media enhancements that improve battery life and app performance
• Networking more effectively with Windows 8.1’s revamped HTTP implementation and new location APIs
• Using Tiles and Toasts to keep apps alive and connected, even when they aren’t running
• Enabling users to send content between devices via NFC tap and send
• Ensuring accessibility and globalizing your apps
• Efficiently debugging, optimizing, packaging, and deploying your apps
• Building sideloadable apps that don’t have to be published in Windows Store

“This book doesn’t just focus on singular concepts, it also provides end-to-end perspective on building an app in WinRT. It is one of those essential tools for Windows developers that will help you complete your software goals sooner than without it!”
—Tim Heuer, Principal Program Manager Lead, XAML Platform, Microsoft Corporation

Jeremy Likness is a multi-year Microsoft MVP for XAML technologies. A Principal Consultant for Wintellect with 20 years of experience developing enterprise applications, he has worked with software in multiple verticals ranging from insurance, health and wellness, supply chain management, and mobility. His primary focus for the past decade has been building highly scalable web-based solutions using the Microsoft technology stack with client stacks ranging from WPF, Silverlight, and Windows 8.1 to HTML5 and JavaScript. Jeremy has been building enterprise line of business applications with Silverlight since version 2.0, and he started writing Windows 8 apps when the Consumer Preview was released in 2011. Prior to Wintellect, Jeremy was Director of Information Technology and served as development manager and architect for AirWatch, where he helped the company grow and solidify its position as one of the leading wireless technology solution providers in the United States prior to their acquisition by VMware. A fluent Spanish speaker, Jeremy served as Director of Information Technology for HolaDoctor (formerly Dr. Tango), where he architected a multilingual content management system for the company’s Hispanic-focused online diet program. Jeremy accepted his role there after serving as Development Manager for Manhattan Associates, an Atlanta-based software company that provides supply chain management solutions. John Garland is a Principal Consultant for Wintellect with more than 15 years of experience developing software solutions. Prior to consulting, he spent much of his career working on high-performance video and statistical analysis tools for premier sports teams, with an emphasis on the NFL, the NBA, and Division 1 NCAA football and basketball. His consulting clients range from small businesses to Fortune-500 companies, and his work has been featured at Microsoft conference keynotes and sessions. John is a Microsoft Client Development MVP, as well as a member of the Windows Azure Insiders and Windows Azure Mobile Services Advisory Board. He lives in New Hampshire with his wife and daughter, where he is an active speaker and participant in the New England software development community. He is a graduate of the University of Florida with a Bachelor’s degree in Computer Engineering and holds Microsoft Certifications spanning Windows, Silverlight, Windows Phone, and Windows Azure. John is the author of the ebook Windows Store Apps Succinctly (Syncfusion, 2013).

Foreword   xix
Preface   xxii
Chapter 1  The New Windows Runtime   1
Windows Runtime Specifics   1
Windows Store Apps   4
   Example: Create a Windows Store App   5
.NET and WinRT 9
   Fundamental Types   9
   Mapped Types   10
   Streams and Buffers   14
Desktop Applications   15
   Example: Reference WinRT from a Desktop Application   15
   Example: Examine Projections in a WinRT Component   20
Asynchronous Functions   24
Summary   27
Chapter 2  Windows Store Apps and WinRT Components   29
Fundamentals of a Windows Store App   30
   Windows Store App Templates   32
   Understanding the App Manifest   45
   Finding Your Package on Disk   52
   Running Your App   54
Application Lifecycle   61
   The Navigation Helper and Suspension Manager   67
Managed WinRT Components 75
   Creating a Managed WinRT Component   76
   Calling Managed WinRT Components from Any Language   78
Summary   79
Chapter 3  Layouts and Controls   81
The Visual Tree 83
Data-Binding   85
   Dependency Properties   91
   Attached Properties 94
   Value Precedence 95
   Property Change Notification 95
Animations 97
   Example: Dynamically Apply Animations to a Control   97
The Visual State Manager 100
   Example: Visual State Manager   101
   Groups   103
   States   105
   Transitions   106
The Visual State Manager Workflow   107
Programmatic Access to Visual States 109
Custom Visual State Managers   109
Styles 111
Templates   112
   Example: Using Templates   112
Layouts   115
   Panel   115
   Border 115
   Canvas   116
   Grid   116
   StackPanel   117
   VirtualizingPanel and VirtualizingStackPanel   118
   WrapGrid 119
   VariableSizedWrapGrid   119
   ContentControl   120
   ItemsControl   121
   ScrollViewer   122
   ViewBox   122
   GridView   123
   ListBox   123
   ListView   124
   FlipView   124
   Example: Using the Viewbox and Various Layouts   125
Controls   130
   Flyouts   133
Custom Controls   135
   Example: Creating a Custom Control   136
Parsing XAML   140
HTML Pages   143
   Example: Working with HTML and JavaScript   144
Summary   150
Chapter 4  Data and Content   153
Example: Data Manipulation with the Skrape App 154
The Clipboard   154
Application Storage   159
   Roaming Data   161
   Containers   162
   Settings   163
   Composite Values   165
Storage Folders and Files   166
   Storage Folders   168
   Storage Files   170
   Buffers and Streams   171
   Path and File Helper Classes   174
   Storage Query Operations   176
   Pickers and Cached Files   180
   Compression   187
Data Formats 191
   Example: Working with Data Formats   192
   XSLT Transformations   195
Document Data   196
Summary   198
Chapter 5  Web Services and Syndication   199
SOAP   200
REST   209
OData Client   217
Syndication   219
Summary   223
Chapter 6  Tiles and Toasts   225
Tiles   226
   Default Tiles   227
   Live Tiles   229
   Cycling Tile Notifications   234
   Secondary Tiles   236
Badges   239
Periodic Notifications   242
Toasts   242
   Toasts in Desktop Applications   248
Push Notifications   249
   Registering to Receive Push Notifications   251
   Sending Push Notifications   253
Summary   259
Chapter 7  Connecting to the Cloud   261
Windows Azure Mobile Services   262
   Example: Managing a Shared Group of Subscribers   267
   Connecting an App to a Mobile Services Instance   267
   Authentication   269
   Data Storage   274
   Custom APIs   289
   Integrated Push Notification Support   291
   Scheduled Tasks   297
   Mobile Services Deployment Tiers   298
Live Connect   301
   Getting Started   302
   The Example App   304
   Authentication   304
   Working with Profile Information   308
   Working with Contacts   310
   Working with Calendars and Events   311
   Working with OneDrive   315
Summary   321
Chapter 8  Security   323
Authentication   324
   Multistep Authentication (Google)   330
   Unlocking the Password Vault   331
Encryption and Signing 333
   The Data Protection Provider   333
   Symmetrical Encryption   337
   Verification   343
   Asymmetric Algorithms   345
Summary   347
Chapter 9  Model-View-ViewModel (MVVM)   349
UI Design Patterns   350
   The Model   351
   The View   352
   Model-View-Controller (MVC)   353
   Model-View-Presenter (MVP)   354
   Model-View-ViewModel (MVVM)   355
The ViewModel Decomposed   356
Common MVVM Misperceptions   362
Benefits of MVVM   364
Common MVVM Solutions   367
   Design-Time Data   367
   Accessing the UI Thread   369
   Commands   371
   Handling Dialogs   371
   Selection Lists   371
   Filtered Lists   373
   Validation   375
Summary   377
Chapter 10  Networking   379
Web and HTTP   379
HomeGroup   382
Connectivity and Data Plans   384
Sockets   389
   WebSockets   389
   UDP and TCP Sockets 392
Proximity (Near Field Communications)   397
   NFC-Only Scenarios   397
   Tap-to-Connect Scenarios   403
Background Transfers   408
Summary   412
Chapter 11  Windows Charms Integration   415
Displaying App Settings   417
   The Settings Example   418
   Adding Settings Entries   418
Sharing   421
   The Share Source Example   423
   Creating a Share Source App   424
   The Share Target Example   433
   Creating a Share Target App   434
   Debugging Share Target Apps   441
Using Play To   442
   The Play To Example   443
   Creating a Play To Source App   444
   Creating a Play To Target App   446
Summary   448
Chapter 12  Additional Windows Integration   451
Integrating with the File and Contact Pickers   452
   The Example App   453
   File Open Picker   454
   File Save Picker 458
   Contact Picker   460
Application Activation Integration   462
   The Example App   463
   File Activation   463
   Protocol Activation   467
   Account Picture Provider   470
   AutoPlay   471
Working with Contacts and Appointments   473
   The Example App   474
   Contacts   474
   Appointments   476
Summary   478
Chapter 13  Devices   479
Working with Input Devices   480
   The Example App   480
   Identifying Connected Input Devices   481
   Pointer, Manipulation, and Gesture Events 484
   Keyboard Input   495
Sensor Input   498
   The Example App   498
   Geolocation   502
   Geofencing   510
   Motion and Orientation Sensors   517
Summary   529
Chapter 14  Printers and Scanners   531
Working with Printers   532
   The Example App   532
   Getting Started   533
   Configuring a Print Task   534
   Providing Printing Content   542
Working with Scanners 547
   The Example App   547
   Determining Scanner Availability   548
   Working with Scan Sources 549
   Previewing   550
   Scanning   551
   Scanner Settings   552
Summary   556
Chapter 15  Background Tasks   559
The Thread Pool   560
Uploads and Downloads   562
Audio 563
Lock Screen Tasks 570
   Lock Screen Capabilities   570
   The Background Task   573
   Listing Background Tasks   576
   Timer   578
   Conditions   578
   Debugging Background Tasks   580
Raw Push Notifications   581
Control Channel   585
System Events   587
Summary   588
Chapter 16  Multimedia   589
Playing Multimedia Content   590
   The Example App   590
   Getting Started   591
   Controlling Playback   592
   Appearance   595
   Audio Settings   596
   Media Information   597
   Markers   597
Acquiring Audio and Video   598
   The Example App   599
   Declaring Application Capabilities   599
   Using CameraCaptureUI   600
   Using MediaCapture   604
Text-to-Speech Support   610
   The Example App   611
   Using the SpeechSynthesizer   611
Summary   613
Chapter 17  Accessibility 615
Requested Theme   616
   High Contrast   618
Keyboard Support   620
Automation Properties   622
Testing with Narrator   623
Automation and Lists   624
Live Settings   625
Automation Peers   626
Accessibility Checker   627
Summary   629
Chapter 18  Globalization and Localization   631
Design Considerations   632
Default Language   633
Configuring Preferred Languages 635
Resource Qualification and Matching   637
Localizing XAML Elements   639
Formatting Dates, Numbers, and Currencies for Locale   642
MVVM and Localization 643
Multilingual Toolkit 644
Summary   648
Chapter 19  Packaging and Deploying 649
Packaging Your App   650
   Creating an App Package   650
   App Package and App Bundle Contents   654
   Package Identifier   655
Deploying Your App   657
   Publishing Your App in the Windows Store 657
   Other Deployment Options   665
Making Money with Your App in the Windows Store   667
   The Example App   668
   Pricing Your App in the Windows Store   669
   Trial Mode Apps   670
   In-App Purchases   675
   Including Advertisements   678
Summary   683
Chapter 20  Debugging and Performance Optimization   685
Understanding the Debugger   686
   Native, Managed, and Script Debuggers   686
   Just My Code   688
   Edit and Continue   690
   Just in Time Debugging   691
   How to Launch the Debugger   691
   Program Databases   692
   Debug Windows   693
   Managing Exceptions   694
Logging and Tracing   696
Profiling and Performance Analysis   702
   Performance Tips   704
   CPU Sampling   706
   XAML UI Responsiveness   709
   Energy Consumption 710
Code Analysis   712
Summary   717
Appendix A  Under the Covers   719
Fundamental WinRT Concepts   719
Namespaces   720
Base Types   720
Primitives   720
Classes and Class Methods   721
Structures   722
Generics   722
Null   723
Enumerations   723
Interfaces   723
Properties   723
Delegates   724
Events   724
Arrays   725
WinRT Internals   725
Appendix B  Glossary   733
Index   749

Verlagsort New Jersey
Sprache englisch
Maße 179 x 231 mm
Gewicht 1256 g
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Informatik Software Entwicklung Mobile- / App-Entwicklung
Informatik Weitere Themen Smartphones / Tablets
ISBN-10 0-321-92797-4 / 0321927974
ISBN-13 978-0-321-92797-2 / 9780321927972
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Das umfassende Handbuch

von Jürgen Sieben

Buch | Hardcover (2023)
Rheinwerk (Verlag)
89,90
Das große Handbuch zum JavaScript-Framework

von Christoph Höller

Buch | Hardcover (2022)
Rheinwerk (Verlag)
39,90