Quantcast
Viewing latest article 15
Browse Latest Browse All 50

Book Review: Knockout.js Succinctly

Image may be NSFW.
Clik here to view.
First of all I'd like to thank the Syncfusion team for choosing me to do this book review, I appreciate the opportunity.

Syncfusion provides a one stop for various .NET components. They offer high-performance components for enterprise business needs on every .NET platform—such as ASP.NET, ASP.NET MVC, WPF, Windows Forms, and Silverlight. The cool thing about them is that they provide succinctly series of books for developers. I chose this book because it caught my interest. I've heard about the popularity of Knockout but I haven't actaully used it yet and so I've decided to give this book a shot.

Knockout.js Succinctly was written by Ryan Hodson. This eBook is available for free download at www.syncfusion.com.

This book is intended for web developers who need to build dynamic and scalable user interface (UI) with less markup. Majority of the topics presented in this book are about UI, and it's assumed that you have the basic knowledge of HTML, CSS and JavaScript. Knowledge in any JavaScript frameworks (e.g jQuery, MooTools, Prototype, etc..) is not really required, but if you do then much better.

The introductory part of the book is perfectly presented. In this part you will know what this framework is all about and how this fits into other technologies and frameworks. It also highlights the main features of Knockout.js and provides a graphical presentation for demonstrating how we can easily create dynamic data-driven user-interface in a clean and manageable way.

Chapters 1 and and 2 provide a brief overview about the Knockout.js framework. The first chapter focuses on the conceptual side of Knockout by providing graphics and in-depth explanation of the Model-View-ViewModel (MVVM) design pattern. Bindings and Observables are also covered. The second Chapter covers the high-level survey of Knockout.js’ main components explained in chapter 1. In this chapter you will be able to know how the MVVM design pattern, Observables and Bindings interact to create a dynamic user interface. The sample implementation in this chapter is very well explained and presented. The basic demonstration of defining the HTML markup, defining the ViewModel to binding the HTML elements is very easy to understand. Using custom objects and interactive bindings are also covered with basic code implementation and explanation. Chapter 3 talks about the Data-Oriented aspects of Knockout.js and focuses on Observables. This chapter covers in-depth exploration about Computed Observables and Observable arrays. I was really amazed about these features and the simplicity to handle complex things in the UI. The sample codes are well presented along with the detailed explanation on how stuff works (e.g. adding, deleting, destroying, etc. objects) within Knockout.  Chapter 4 through 6 demonstrates how to connect this data to HTML elements. Chapter 4 highlights the main binding features within Knockout such as foreach,if, ifnot and with bindings.These control-flow bindings give you complete control over how your ViewModel is displayed in a view. Chapter 5 introduced appearance bindings that allows you to change an HTML element when a particular condition has been met. The appearance bindings presented in this chapter provide all the tools you need to display your data that way you want it. Chapter 6 covers interactive bindings, which leverage Knockout.js’ automatic dependency tracking against HTML’s form fields. The examples in this chapter are very well presented and it's easy to follow.  The last two chapters of this book feature the usage of jQuery AJAX to demonstrate how Knockout.js interacts with the server side application.

Overall I was impressed with how the author gathered such information in the book to create and simplify things with just 60+ pages. The graphical presentation, code examples with detailed explanations are nicely presented. Good job!

Knockout.js is very powerful and amazing JavaScript framework that lets you build a fully dynamic and scalable UI, and on top of that it's very customizable and gives you full control how to render stuff in your View. The features presented are very promising and even myself can't wait to get my hands dirty of using them. So if you are a web developer and want to create dynamic and scalable UI in your view then I would highly recommend to grab yourself a copy of this book.

Viewing latest article 15
Browse Latest Browse All 50

Trending Articles