Essentials of Developing Windows Store Apps using HTML5 & JavaScript

Introduction

In this course, participants will learn essential programming skills and techniques that are required to develop Windows Store apps. This includes a combination of both design and development skills, as well as ensuring that students are comfortable using and making the most of the Microsoft Visual Studio and Expression Blend tools.

Audience

This course is intended for professional developers who have one or more years experience creating applications and who are comfortable programming in HTML5, JavaScript, and CSS3.

Prerequisites

Before attending this course, participants should have:
 
  • 1 or more years experience creating applications
  • 1 to 3 months experience creating Windows client applications
  • 1 to 3 months experience using Visual Studio 2010 or 2012
  • Attended Course 20480B: Programming in HTML5 with JavaScript and CSS3, or equivalent knowledge

At course completion

After completing this course, participants will be able to:
 
  • Describe the Windows 8 platform and features, and explore the basics of a Windows app interface
  • Create the User Interface layout and structure
  • Apply the MVVM pattern to application design
  • Implement the AppBar and layout controls
  • Use templates to create the UI
  • Use data binding to present data in the UI
  • Handle files and streams
  • Design and implement Process Lifetime Management (PLM)
  • Handle navigation scenarios in a Windows Store app
  • Implement Semantic Zoom
  • Design and implement contracts such as Search, Share and Settings
  • Implement tiles and toast notifications in a Windows Store app
  • Respond to mouse, keyboard and touch events, including gestures
  • Deploy a Windows Store app to the Windows Store or an enterprise store
 


Course outline

Module 1: Overview of the Windows 8.1 Platform and Windows Store Apps

This module introduces you to the Windows 8.1 user experience and features, Windows Store apps, and the new user interface. Understanding how Windows Store apps look and operate is the key to understanding the principles that you will use to develop your own Windows Store apps. This will help you to develop apps that are more intuitive, compelling, and useful.

  • Lesson 1: Introduction to the Windows 8.1 Platform
  • Lesson 2: Windows 8 UI Principles
  • Lesson 3: WinRT and Language Projections

Module 2: Single-Page Apps and the MVVM Design Pattern


In this module, you will learn about the Model-View-ViewModel (MVVM) design pattern and the Single- Page Application (SPA) development concept. By using MVVM and SPA, you can create a great user experience in a maintainable and extensible app.
  • Lesson 1: Single-Page Applications
  • Lesson 2: The MVVM Design Pattern

Module 3: Using WinJS


In this module, you will explore the WinJS library and some commonly used WinJS APIs. In particular, you will learn about the WinJS.Promise object and how to use it, the WinJS.Application namespace and the functionality it contains, and the WinJS.Utilities functions. Becoming familiar with all those APIs will help you to create reusable and robust apps for the Windows platform.
  • Lesson 1: The WinJS Library
  • Lesson 2: WinJS APIs

Module 4: Implementing Layout Using Windows 8.1 Controls


This module explains how to lay out content and controls on the screen, while remaining responsive to screen changes, such as orientation and size changes. The module introduces concepts such as WinJS templates and controls such as AppBar, Flyout, and Rating.
  • Lesson 1: Windows 8.1 Layout Controls
  • Lesson 2: Implementing WinJS Controls and Templates
  • Lesson 3: The AppBar Control
  • Lesson 4: Windowing Modes

Module 5: Presenting Data


This module explains how to ensure that your app supports various devices and screen orientations.
  • Lesson 1: Working with Data Presentation Controls
  • Lesson 2: The ListView Control

Module 6: Implementing Tiles and User Notifications


There is a variety of tile formats you can use to convey information, including pictures, text, and combination of both. You can also use badges to display numeric information or status glyphs on your tiles and update these badges by using notifications. Notifications are also covered in this module.
  • Lesson 1: Implementing Tiles, Live Tiles, Secondary Tiles, and Badge Notifications
  • Lesson 2: Implementing Toast Notifications

Module 7: Handling Files in Windows Store Apps


In this module, you will learn how to use files, streams, and pickers so that the user can store and retrieve information managed by your app.
  • Lesson 1: Handling Files and Streams in Windows Store Apps
  • Lesson 2: Working with File User Interface Components

Module 8: Windows Store App Process Lifetime Management


This module covers the app life cycle, app state management, and various app activation states. Understanding PLM is important for properly persisting data across suspensions, recovering from termination, and sharing settings between app installations on multiple devices.
  • Lesson 1: Process Lifetime Management
  • Lesson 2: Windows Store App Activation and Background Tasks
  • Lesson 3: Implementing a State Management Strategy

Module 9: Designing and Implementing Navigation in a Windows StoreApp


This module explores how to build richer and more interactive apps, and it does this by addressing the following questions:
  • How do you implement navigation in Windows Store apps?
  • How can you give the user a set of rich pages that they can use in a way that captures the essence of fast and fluid?
Page navigation is a fundamental part of many apps. This module explains how to implement basic navigation, how to pass parameters between pages, and how to handle navigation events. The module also describes the navigation stack.
  • Lesson 1: Handling Navigation in Windows Store Apps
  • Lesson 2: Semantic Zoom

Module 10: Implementing Windows 8.1 Contracts


This module introduces contracts and charms. These are two powerful new Windows 8.1 features that help create a consistent and unified experience across Windows Store apps. By using contracts, you make it easier for users to search your app’s content, to discover and change common settings, and to share data with other apps.
  • Lesson 1: Designing for Charms and Contracts
  • Lesson 2: The Search Contract
  • Lesson 3: The Share Contract
  • Lesson 4: Managing App Settings and Preferences

Module 11: Designing and Implementing a Data Access Strategy


This module describes the various data access strategies that you can use in app development, and it specifically focuses on the best practices for remote storage.
  • Lesson 1: Evaluating Data Access Strategies
  • Lesson 2: Working with Remote Data

Module 12: Responding to Mouse and Touch


Windows Store apps must support mouse, keyboard, and most important of all, touch interactions. In this module, you will learn how to successfully include all three interaction types in your Windows Store apps.
  • Lesson 1: Working with Mouse Events
  • Lesson 2: Working with Gesture Events

Module 13: Planning for Windows Store App Deployment


In this module you will learn what is involved in the process of preparing and submitting the app. This includes changes to the app manifest, passing app certification, meeting Windows Store app certification requirements, and by using Windows Store-related tools in Visual Studio 2013. Finally, you will learn how to submit apps to the Windows Store and a private enterprise store.
  • Lesson 1: The Windows Store App Manifest
  • Lesson 2: Windows Store App Certification
  • Lesson 3: After completing this module, students will be able to:
  • Lesson 4: Change an app's package manifest to meet the requirements for deploying to the Windows Store.
  • Lesson 5: Deploy an app to the Windows Store and prepare an app for enterprise deployment.

Documentation

Microsoft Official Courseware

Lab

  • Lab 1 : Overview of the Windows 8.1 Platform and Windows Store Apps
  • Lab 2 : Single-Page Apps and the MVVM Design Pattern
  • Lab 3 : Using WinJS
  • Lab 4 : Implementing a Layout by Using Windows 8.1 Controls
  • Lab 5 : Presenting Data
  • Lab 6 : Implementing Tiles and User Notifications
  • Lab 7 : Handling Files in Windows Store Apps
  • Lab 8 : Designing and Implementing Navigation in a Windows Store App
  • Lab 9 : Implementing Windows 8.1 Contracts
  • Lab 10 : Designing and Implementing a Data Access Strategy - Quiz
  • Lab 11 : Responding to Mouse Events and Touch Gestures

Formations complémentaires

  • 20480 Programming in HTML5 with JavaScript and CSS3
  • 20482: Advanced Windows® Store App Development Using HTML5