Building HTML5 and JavaScript Apps with MVVM and Knockout
Learn how to build robust and maintainable Web applications with JavaScript patterns, MVVM, and KnockoutJS.
What you'll learn
Do you write a lot of HTML, JavaScript, and jQuery to push and pull data? Does your JavaScript seem to lack the structure and patterns of your non script code? In this course you will learn popular techniques to use data binding to bind your data to your target controls in HTML writing less code, but gaining more power. See how to consume json data, use json objects in JavaScript, and use declarative binding all by using the KnockoutJS JavaScript library. Learn how the XAML data binding paradigm has been brought to the web world with observable objects, change notifications, subscriptions, and 2 way bindings. Explore modern JavaScript patterns and practices that follow the SOLID principles, reduce errors in your code, and make code easier to maintain. After taking this course you will have a solid foundation for building robust web apps using common JavaScript patterns, MVVM, and KnockoutJS.
Table of contents
- Introduction 2m
- JavaScript, Data Binding and Knockout 5m
- JavaScript for Developers: Demo 2m
- MVVM with Knockout 3m
- MVVM with Knockout: Demo 2m
- jsFiddle 2m
- jsFiddle: Demo 4m
- Using Knockout in Visual Studio 1m
- Using Knockout in Visual Studio: Demo 2m
- Begin Coding with Knockout 2m
- Begin Coding with Knockout: Demo 6m
- Resources 1m
- Resources: Demo 2m
- Summary 1m
- Introduction 1m
- Push and Pull Data without Data Binding 2m
- Push and Pull Data without Data Binding: Demo 4m
- Observables 3m
- Observables: Demo 4m
- Computed Observables 2m
- Computed Observables: Demo 5m
- Computed Observables on an Object Graph: Demo 3m
- Writeable Computed Observables 1m
- Writeable Computed Observables: Demo 5m
- Observable Arrays 2m
- Observable Arrays: Demo 11m
- Observable Array Functions 1m
- Observable Array Functions: Demo 2m
- Subcribe to Observables 1m
- Subcribe to Observables: Demo 5m
- Summary 1m
- Built In Bindings Overview 4m
- Bindings: Text and HTML: Demo 2m
- Bindings: Values: Demo 5m
- Bindings: Checkbox and Radio Button: Demo 8m
- Bindings: Lists: Demo 6m
- Bindings: Enable and Disable: Demo 3m
- Bindings: DOM Element Focus: Demo 5m
- Bindings: Click and Event: Demo 6m
- Bindings: CSS and Styling: Demo 5m
- Bindings: Attributes: Demo 4m
- Summary 1m
- JavaScript Patterns with Knockout 1m
- Spaghetti to Ravioli 5m
- Spaghetti to Ravioli: Demo 5m
- Object Literals and 'this' 2m
- Object Literals and 'this': Demo 8m
- The Module Pattern for ViewModels 4m
- The Module Pattern for ViewModels: Demo 8m
- The Revealing Module Pattern for ViewModels 2m
- The Revealing Module Pattern for ViewModels: Demo 7m
- Summary and Tips 2m
- Templates, Control of Flow, and Containerless Bindings 2m
- Named Templates in Script Tags 1m
- Named Templates in Script Tags: Demo 3m
- Named Templates without Script Tags: Demo 2m
- Control of Flow and Binding Contexts 5m
- Control of Flow and Binding Contexts: Demo 7m
- Anonymous/Inline Templates 3m
- Anonymous/Inline Templates: Demo 3m
- Dynamically Assigned Templates 2m
- Dynamically Assigned Templates: Demo 6m
- Swap Templates with Control of Flow: Demo 2m
- Template Binding Parameters and Array Filtering 3m
- Template Binding Parameters and Array Filtering: Demo 9m
- Containerless (Comment) Bindings 3m
- Containerless (Comment) Bindings: Demo 4m
- External Templates 2m
- External Templates: Demo 7m
- Summary and Tips 2m
- Custom Binding Handlers and Persisting Data 1m
- Custom Binding Handlers 3m
- Binding Handler for jQuery Animation: fadeVisible Demo 7m
- jQuery UI Button Binding Handler Demo 5m
- Binding Handler with Behavior: starRating Demo 4m
- Unobtrusive JavaScript 2m
- Unobtrusive JavaScript: Demo 5m
- Loading and Saving Data 1m
- Ajax, Service Abstraction, and jQuery Dialogs: Demo 8m
- Change Tracking 1m
- Change Tracking: Demo 5m
- Knockout Mapper 1m
- Summary and Tips 1m