Yet Another Podcast #60–Knockout.js

Talking with Steve Sanderson, John Papa and Jon Galloway about Knockout.jsJonGallowaySteve Sanderson portrait John Papaand client side JavaScript programming.

Listen | Yet Another Podcast

Call in comments: 1-347-YAP-CAST

rssiTunesalt

About Jesse Liberty

Jesse Liberty is the Principal Mobile Developer with IFS Core. He has three decades of experience writing and delivering software projects. He is the author of 2 dozen books and a couple dozen Pluralsight & LinkedIn Learning courses, and has been a Senior Technical Evangelist for Microsoft, a Distinguished Software Engineer for AT&T, a VP for Information Services for Citibank and a Software Architect for PBS. He is a Xamarin Certified Mobile Developer and a Xamarin MVP and a Microsoft MVP.
This entry was posted in Essentials, JavaScript, Languages, MVVM, Patterns & Skills, Podcast and tagged . Bookmark the permalink.

2 Responses to Yet Another Podcast #60–Knockout.js

  1. John Papa compared KnockoutJS to XAML data binding, but he mentioned that his comparison wasn’t quite accurate. The thing that XAML data binding is missing is dependency tracking. XAML uses change notification, which is completely manual. When FirstName changes, you have to write code to notify XAML that FullName has changed.

    I’ve been doing dependency tracking for many years. I’ve recently started a project called KnockoutCS to bring KnockoutJS-style dependency tracking to XAML. Here’s what I have working:


    private void MainPage_Loaded(object sender, RoutedEventArgs e)
    {
    dynamic model = KO.Observable(new Model());
    DataContext = KO.ApplyBindings(model, new
    {
    FullName = KO.Computed(() => model.FirstName + " " + model.LastName)
    });
    }

    Where the model is simply:

    public class Model
    {
    public string FirstName { get; set; }
    public string LastName { get; set; }
    }

    Much easier than INotifyPropertyChanged.

  2. manuel says:

    Is there a reason that i cant download this podcast via zune from switzerland?

    cheers

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.