Welcome!

Java Authors: Roger Strukhoff, Elizabeth White, Liz McMillan, Patrick Carey, Greg Akers

Blog Feed Post

Building Windows 8 Apps with JavaScript Book Review

Although I started with Cold Fusion for application development, I did plenty brochureware sites with HTML. I believe the version was HTML 2.0 for IE 2.0. I lived in the browser world for years doing Cold Fusion, ASP, and HTML sites. When winforms and Smart Client with web services emerged I changed my religion. Since then I have been avoiding the browser whenever possible since.

For the past couple of years my extent of using simple HTML has been limited to writing blogs and book reviews. Simple HTML means no ASP.NET or ASP.NET MVC. I have used HTML/JavaScript/CSS a lot as a byproduct of building ASP.NET and ASP.NET MVC applications for public consumption. Internal enterprise applications I will still push for using WPF and web services over ASP.NET or ASP.NET MVC, but I lose that battle a lot, especially when the developers have never learned WPF (XAML) and have no interest in learning anything new.

When it comes to Windows Store Apps my first choice will always be XAML with C# or C++. The problem is I am going to end up fighting the same battle with the web developers that don't like learning anything new. They are going to turn to HTML/JavaScript/CSS to build their Windows Store Apps.

Microsoft has recreated the same type of migration path as they did for the VB6 developers to move to VB.NET. The problem with that migration was tons of really bad VB.NET being written. After running into a lot of VB.NET projects that performed very badly and were very buggy I refused to allow VB.NET on my projects whenever I could.

The problem was VB6 programmers would not learn OOP and continued to code like they were still in the VB6 world. When I made them switch to C# that seemed to force them to learn more about .NET and that really helped improve their OOP skills. I never had anything against VB.NET coded correctly, the problem was most people didn’t code it correctly.

My fear of web developers moving to a mobile client application development environment with a requirement for natural user interfaces using touch is that we are going to see some atrocious applications being built. Windows Store Apps development is new enough that I have not had to deal with a lot of cleanup of bad HTML/JavaScript/CSS development yet. If I do start running into it, I will be adopting the same line of thought I had for VB.NET on projects. Meaning if it is my call, all development on my projects will be done using XAML with C# or C++. I really hope that does not happen again.

If you are one of those web developers that are planning on using your HTML/JavaScript/CSS, please take the time to read this book and other books on mobile device development and natural user interfaces. You are no longer developing for the browser!

With all that said, this book is a great place to start learning how to use your HTML/JavaScript/CSS to develop Windows Store Apps the right way. Below are the chapters included in the book.

1. Hello, Windows 8!
2. Binding and Controls
3. Layout
4. Typography
5. Media
6. Drawing and Animation
7. App State
8. Networking
9. Shell Contracts
10. Shell Integration
11. Device Interaction
12. Native Extensibility
13. Making Money
A. JavaScript for C-Family Programmers
B. Presentation and Style at a Glance

This book does a great job of covering development on Windows 8 with JavaScript and introducing architectural and design concerns that need to be considered on mobile devices. It does a great job of covering all the controls in and out of the context of touch. It injects thoughts on performance concerns with all the topics that need to worry about it.

The application state coverage is an important topic to understand and a must read chapter for new Windows 8 App developers.

I thought they did a really good job of covering Shell Contracts and Shell Integration. They are one of my favorite features in Windows 8.

The last chapter of the book does an awesome job of showing us how to go through a submission to the Microsoft Windows Store.

The book ends with two appendices. The first is an overview of JavaScript for C-Family programmers. I thought they did a pretty good job of assembling a lot of topics into a format which allowed them to cover a lot in a little space. The second appendix is an overview of HTML5 and CSS. It is all short and concise, but has a lot of good coverage.

I did find a couple of things missing that I would have like to see covered. One was the Windows.UI.Input.Inking APIs. The was no coverage at all. This is one of the main features I am using in the XAML project I am building. Another topic I would have liked to have seen more on in is using SQLite. So far all the books that I have read on Windows 8 Apps tell you that it's available, but they don't explain how to use it. The apps I am working on are going to need a robust local data cache, and App Data and User Data are not going to be able to handle it. Security was also only lightly touched on. There could have more on security.

The code samples are very well organized and usable. The best part about them is they all work. That is not always the case anymore. I recently purchased a book I had been really looking forward to getting my hands on. It had 11 projects included as samples and none of them worked. After going back and forth with the author I threw the book on a shelf and decided to not even bother with it. He fixed three of them by the third round of updates. That gave me very little confidence in the advice he would offer in a book.

All in all I thought this book was a great read. The authors writing style made reading it a pleasure. Not all technical authors can do that. I highly recommend this book to anyone looking at getting into building Windows 8 Apps with JavaScript.

For more book recommendations check out my .NET, iOS, and Java Architecture and Development Book Recommendations for 2013

Building Windows 8 Apps with JavaScript

Read the original blog entry...

More Stories By Tad Anderson

Tad Anderson has been doing Software Architecture for 18 years and Enterprise Architecture for the past few.