Start Here! Build Windows 8 Apps with HTML5 and JavaScript |
Authors: Dino and Francesco Esposito
Writing JavaScript apps for Windows 8 isn't the same as creating Web apps - it has its own API. This book aims to guide you from what you know about HTML and JavaScript to creating WinRT apps that will run on the Windows 8 desktop or slate. Chapter 1 details how to download and use Visual Studio 2012 Express. The example might be a bit too advanced for the beginner and if you don't follow don't worry; skip to the next chapters. The following three chapters form a short introduction to HTML5, CSS and JavaScript. Of course, if you already know these well you might be tempted to skip these chapters but my advice is to read them through as a refresher and to make sure you view things in the right way. The chapter on JavaScript is particularly good and would serve to bring you up to speed if you have only picked the language up by using it. Despite the inclusion of these "getting up to speed" chapters, I don't think that the book is suitable for the complete beginner. You need to know HTML/CSS and you need to be able to program in JavaScript to get anything much from this book - and I don't think this is unreasonable. If you are keen to get on with Windows 8 development then you might be disappointed that it takes until Chapter 5 to get there. There is a lot of good information in the earlier chapters, however, and by the time you reach Chapter 5 you should be thinking in the right way about what you are going to do next. After an introduction to the revolution that is WinRT, the idea of using other languages is discussed. From here we take a quick look at WinJS, the JavaScript library that makes it all possible. Next we have an example that introduces the way the JavaScript enhances the basic HTML. The problem is that this is presented within a lot of code. Rather than explaining the principle and using a few lines to demonstrate it the use of a big example forces you to scan lines of code to find the one or two that are relevant. In this chapter we are not only introduced to the basic UI, but also to data-binding and lifecycle issues. Each of these topics really could occupy a chapter of their own.
Chapter 6 seems to be about the UI, but it ranges over general topics such as project structure and the manifest. As before, the ideas are introduced via large examples rather than short code extracts. Chapter 7 moves on to using multimedia, but in fact it is mostly about navigation and multipage design. The example that explains how to work with video is a video clip gallery using the SemanticZoom component. The next chapter does focus in on lifecycle and state management, but given this is a core difference between general JavaScript app developement and Windows JavaScript development it probably should have been discussed sooner. The video gallery example is improved so that it handles orientation and resolution changes. From this point on the book gets more advanced. In Chapter 9 the subject of working with the Windows 8 system is considered - mostly contracts. Chapter 10 is on persisting data; Chapter 11 deals with remote data; and Chapter 12 is about devices and sensors including GPS, webcam and printers. The penultimate chapter is about live tiles. which again is a topic I would have expected to be covered earlier as it is a core WinRT app feature. The final chapter is on getting your app into the Windows Store. If you like having ideas introduced using examples then this might be the book for you. However, if you prefer principles of operation followed up with an example then perhaps not. The book never goes off the beaten track of the documentation, but it does provide a reasonable introduction to that documentation. It is also far from complete and there are large parts of the Win.JS library not explored. On balance I can't recommend this book, despite the fact that parts of it are very good indeed. The introduction to JavaScript for example should be expanded into a book in its own right. The big problem is that it lacks a logical structure and it doesn't cover enough of the ideas. With a bit of reorganization and a few extra chapters it could, however, be good so I hope it makes it to a revised and updated edition.
|
|||
Last Updated ( Wednesday, 26 February 2014 ) |