Module 1: Overview of HTML and CSS
This module provides an overview of HTML and CSS, and describes how to use Visual Studio 2012 to build a Web application.
Overview of HTML
Overview of CSS
Creating a Web Application by Using Visual Studio 2012
Lab : Exploring the Contoso Conference Application
Walkthrough of the Contoso Conference Application
Examining and Modifying the Contoso Conference Application
Module 2: Creating and Styling HTML5 Pages
This module describes the new features of HTML5, and explains how to create and style HTML5 pages.
Creating an HTML5 Page
Styling an HTML5 Page
Lab : Creating and Styling HTML5 Pages
Creating HTML5 Pages
Styling HTML5 Pages
Introduction to jQuery
Displaying Data Programmatically
Module 4: Creating Forms to Collect Data and Validate User Input
Overview of Forms and Input Types
Validating User Input by Using HTML5 Attributes
Lab : Creating a Form and Validating User Input
Creating a Form and Validating User Input by Using HTML5 Attributes
Module 5: Communicating with a Remote Data Source
This module describes how to send and receive data to and from a remote data source by using an XMLHTTPRequest object and by performing jQuery AJAX operations.
Sending and Receiving Data by Using XMLHTTPRequest
Sending and Receiving Data by Using jQuery AJAX operations
Lab : Communicating with a Remote Data Source
Serializing and Transmitting Data
Refactoring the Code by Using jQuery ajax method
Module 6: Styling HTML5 by Using CSS3
This module describes how to style HTML5 pages and elements by using the new features available in CSS3.
Styling Block Elements
Enhancing Graphical Effects by Using CSS3
Lab : Styling Text and Block Elements using CSS3
Styling the Navigation Bar
Styling the Page Header
Styling the About Page
Creating Custom Objects
Lab : Refining Code for Maintainability and Extensibility
Inheriting From Objects
Refactoring Code to Use Objects
Module 8: Creating Interactive Pages using HTML5 APIs
This module describes how to use some common HTML5 APIs to add interactive features to a Web application. This module also explains how to debug and profile a Web application.
Interacting with Files
Reacting to Browser Location and Context
Debugging and Profiling a Web Application
Lab : Creating Interactive Pages by Using HTML5 APIs
Using the Geolocation API
Module 9: Adding Offline Support to Web Applications
This module describes how to add offline support to a Web application, to enable the application to continue
functioning in a user’s browser even if the browser is disconnected from the network.
Reading and Writing Data Locally
Adding Offline Support by Using the Application Cache
Lab : Adding Offline Support to a Web Application
Implementing the Application Cache
Implementing Local Storage
Module 10: Implementing an Adaptive User Interface
This module describes how to create HTML5 pages that can dynamically detect and adapt to different devices and form factors.
Supporting Multiple Form Factors
Creating an Adaptive User Interface
Lab : Implementing an Adaptive User Interface
Creating a Print-Friendly Stylesheet
Adapting Page Layout To Fit a
Different Form Factor
Module 11: Creating Advanced Graphics
This module describes how to create advanced graphics for an HTML5 Web application by using a Canvas element, and by using Scalable Vector Graphics.
Creating Interactive Graphics by
Using Scalable Vector Graphics
Programmatically Drawing Graphics by Using a Canvas
Lab : Creating Advanced Graphics
Creating an Interactive Venue Map by Using Scalable Vector Graphics
Creating a Speaker Badge by Using a Canvas Element
Module 12: Animating the User Interface
This module describes how to enhance the user experience in an HTML5 Web application by adding animations.
Applying CSS Transitions
Applying CSS Key-frame Animations
Lab : Animating User Interface Elements
Applying Transitions to User Interface Elements
Applying Key-Frame Animations
Module 13: Implementing Real-Time Communications by Using Web Sockets
This module explains how to use Web Sockets to transmit and receive data between an HTML5 Web application and a server.
Introduction to Web Sockets
Sending and Receiving Data by Using Web Sockets
Lab : Implementing Real-Time Communications by Using Web Sockets
Receiving Data from Web Socket
Sending Data to a Web Socket
Sending Multiple Types of
Messages To or From a Web Socket
Module 14: Creating a Web Worker Process
This module describes how to use Web Worker Processes to perform long-running operations asynchronously and improve the responsiveness of an HTML5 Web application.
Introduction to Web Workers
Performing Asynchronous Processing by Using a Web Worker
Lab : Creating a Web Worker Process
Improving Responsiveness by Using a Web Worker
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.
Introduction to the Windows 8.1 Platform
Windows 8 UI Principles
WinRT and Language Projections
Lab : Overview of the Windows 8.1 Platform and Windows Store Apps
Exploring the Windows 8 Platform
Exploring a Windows Store App
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.
The MVVM Design Pattern
Lab : Single-Page Apps and 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.
The WinJS Library
Lab : Using WinJS
Defining the Data.Model Namespace and Objects
Using Promises to Load Data Asynchronously
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.
Windows 8.1 Layout Controls
Implementing WinJS Controls and Templates
The AppBar Control
Lab : Implementing a Layout by Using Windows 8.1 Controls
Implementing an AppBar Control
Creating Adaptive Views
Module 5: Presenting Data
This module explains how to ensure that your app supports various devices and screen orientations.
Working with Data Presentation Controls
The ListView Control
Lab : Presenting Data
Implement 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.
Implementing Tiles, Live Tiles, Secondary Tiles, and Badge Notifications
Implementing Toast Notifications
Lab : Implementing Tiles and User Notifications
Enabling Live Tile Functionality on the Main Tile
Adding Secondary Tiles Functionality
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.
Handling Files and Streams in Windows Store Apps
Working with File User Interface Components
Lab : Handling Files in Windows Store Apps
Writing Data to the Notes File
Reading Data from the Notes File
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.
Process Lifetime Management
Windows Store App Activation and Background Tasks
Implementing a State Management Strategy
Lab : Windows Store App Process Lifetime Management
Explore the Different PLM States
Implement State Management
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
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.
Handling Navigation in Windows Store Apps
Lab : Designing and Implementing Navigation in a Windows Store App
Add Navigation to the App
Implement 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.
Designing for Charms and Contracts
The Search Contract
The Share Contract
Managing App Settings and Preferences
Lab : Implementing Windows 8.1 Contracts
Implement the Search Contract
Implement the Share Contract
Adding a New Setting to the Settings Pane
Optional: Implementing Search with the SearchBox Control
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.
Evaluating Data Access Strategies
Working with Remote Data
Lab : Designing and Implementing a Data Access Strategy-Quiz
Paper Based Quiz
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.
Working with Mouse Events
Working with Gesture Events
Lab : Responding to Mouse Events and Touch Gestures
Implement Mouse Events
Implement 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.
The Windows Store App Manifest
Windows Store App Certification
Module 1: Windows Store App Essentials
This module provides an overview of the Windows 8.1 user experience and features, Windows Store apps, and the new user interface. You will review the process of developing apps using HTML to create the user interface, and th
e WinRT API to interact with the platform.
Review Windows Store App Essentials
Review Windows Store App Essentials – Under the Hood
Module 2: Implementing Animations and Transitions
This module covers the following techniques for creating animations in Windows Store apps:
- The built-in WinJS.UI.Animation namespace
- CSS3 @keyframes
- CSS3 transitions and transformations
In this module, you will learn about the WinJS.UI.Animation namespace and CSS3 animations. By using animations in Windows Store apps, you can improve the user experience. This module also introduces the limitations of animations, and explains best practices for using them.
Working with Transitions and Transformations
Lab : Implementing Animations, Transitions, and Transformations
Creating Animations in a Windows Store App
Creating Transitions and Transformations in a Windows StoreApp
Module 3: Implementing Globalization and Localization
Windows 8.1 supports over 100 languages, with a potential reach of 4.5 billion people. You can sell Windows
Store apps in over 200 markets. When you design an app for globalization and localization, it can reach a wide
audience. Globalization prepares an app for a global audience. This involves changing culture-specific elements
of the user interface, such as dates, times, currencies, languages, and more. Localization takes globalization
further by supporting specific languages, cultures, and regions. You should always globalize an app before you
Working with Resource File
Implementing Culture-Specific Formatting
Lab : Implementing Globalization and Localization
Create and Consume the Resource Files
Apply Culture-Specific Formatting
Module 4: Implementing Branding and a Seamless UI for Windows Store Apps
This module explains how you can add branding to your app, and how to add a branded splash screen to it, which improves the user experience when they load the app.
Introduction to Branding
Customizing the Splash Screen
Branding the UI of Your App
Lab :Branding and a Seamless UI
Creating a Customized Splash Screen
Branding a Windows Store App
Module 5: Advanced Data Scenarios in a Windows Store App
In this module, you will explore the new file storage capabilities of Windows 8.1 and learn how to use them in the apps that you build. You will also see how to design and implement more efficient data storage through caching and how to set up file extensions, associations, and compression.
Implementing Storage Options for a Windows Store App
Implementing Data Caching
Advanced File Functionality
Lab : Caching Data
Module 6: Creating Reusable Controls and Components
Working with Custom Controls
Creating and Using WinRT Components
Lab : Creating Reusable Controls and Components
Create and Use a Custom Control
Use a WinRT Component
Module 7: Implementing Advanced Contract Scenarios
This module describes how to use two new contracts:
- The Print contract enables interaction with printing devices.
- The Play To contract enables media sharing with other devices, such as television sets.
This module also describes how to integrate the contacts and calendar appointments managed by the operating system with a Windows Store app, creating new contacts and calendar appointments, updating and deleting existing ones.
Lastly, you will learn how to take advantage of several convenient Windows 8.1 APIs to provide exciting, user-friendly features in your apps. Windows RT has native APIs for working with PDF files, creating screenshots of
your app, and generating speech from text through speech synthesis.
Implementing the Print Contract
The Play To Contract
Integrating Contacts and Calendars
Integrating speech synthesis
Support PDF files and screenshots
Lab : Integrating the Print Contract Into the App
Integrating the Printing Functionality
Adding PDF Support
Module 8: The Windows Push Notification Service
This module describes and explains Windows Push Notifications design concepts.
Introduction to the Push Notification Service
Communicating with the WNS
Lab : The Windows Push Notification Service
Manage a Windows Notification Service Channel
Module 9: Capturing Media
In this module, you will learn how to include media capturing functionality in your app. Learning to use the media capturing APIs of Windows 8.1 can be a key element in creating an exciting and successful app.
Using CameraCaptureUI to Capture Pictures, Video and Audio
Using MediaCapture to Capture Pictures, Video, or Audio
Lab : Capturing Media
Capturing Video by Using the CameraCaptureUI API
Capturing an Image by Using the MediaCapture API
Module 10: Background Tasks
This module explains how to create, register, and use background tasks for Windows Store apps.
Creating Background Tasks
Using Background Tasks in a Windows Store App
Lab : Background Tasks
Transfer Files in the Background
Create and Consume a Background Task
Module 11: Working with Sensors and Devices
This module describes some of the sensors and devices available to a Windows Store app and explains how to access them from your Windows Store app.
Working with Sensors
Working with Devices
Lab : Working with Sensors and Devices
Using the SimpleOrientationSensor
Using Location Services
Module 12: Generating Revenue with Your App
This module will introduce you to the options you have, as a developer, to increase revenue with your Windows Store apps.
Implementing Trial Functionality in a Windows Store App
Implementing In-App Purchases
Advertising in a Windows Store App
Lab : Generating Revenue with your App
Using the Windows.ApplicationModel.Store Namespace toSupport Trial App Conversion
Implementing In-App Purchasing
Module 13: Securing Windows Store App Data
In this module, you will learn how to create a secure application that is secure at the client and server side, and
how to protect data.
Managing Windows Authentication
Managing Web Authentication
Encryption in a Windows Store App
Lab : Securing Windows Store App Data
Using ACS Authentication
Encrypting User Information
Module 14: Tracing and Profiling Windows Store Apps
In this module, you will learn the techniques that will help you analyze your code for potential issues, create
run time logs efficiently, and diagnose various types of performance problems in your Windows Store app.
Tracing and Profiling a Windows Store App
Lab : Tracing and Profiling Windows Store Apps
Profile Memory Usage