Author: Derek Walter, Mark Sherman
Audience: Novice programmers wanting to create apps
Reviewer: Mike James
A hands on guide to building your own Android apps is a good idea.
I can't understand why App Inventor isn't more popular. It provides a way to create apps that are actually useful. If you are trying to get young people interested in programming what could be more stimulating that being able to create an app for their phone - the only thing that could go wrong is that they have an iPhone rather than an Android.
App Inventor is also a very good way of prototyping Android apps.
This slim book is a quick way of finding out what App Inventor can do. It isn't suitable for the complete beginner but it almost is. It starts from the basics with a look at what programming and Android is all about and then describes how to get started with App Inventor. The big problem with any book on App Inventor or on any block based language is how to list the programs. In this case the blocks are shown as black and white diagrams and this can make it difficult to read.
Chapter 4 is where we start to work though the standard things you need to know in any programming language and it is all about variables. Next we move on in chapter 5 to making use of procedures to simplify the way programs are constructed and chapter 6 deals with Lists - the basic and most useful data structure in App Inventor.
Overall this really isn't enough of a tutorial on constructing algorithms. Just because App Inventor is a graphical block language it doesn't mean that the beginner can be expected to understand and absorb the idea of loops and conditionals just from examples. There should be some discussion of flow of control and perhaps even algorithms in general.
From here the book focuses on different aspects of app creation. Chapter 7 expands on animation and implements a game. Chapter 8 expands on the basic UI by introducing multiple screens in one app. Chapter 9 explains how to use media - audio, images and video including how to use the camera. Chapter 10 goes over using the sensors - location, the accelerometer and the orientation sensor. This is probably the best chapter in the book and might well inspire the reader to think of new uses. The final programming chapter is on using the database TinyDB and its counterpart for the webTinyWebDB - a topic that is often overlooked.
The final chapter is about distributing an app by creating an APK and using the developer console.
Overall the book is easy to read and has a friendly approach. The small diagrams of block programs might be a problem, but you can avoid this by downloading the examples from the book's website. It is strong on examples but fairly weak on principles. This probably doesn't matter as long as you can cope with the basics of programming.
The biggest critisism is that it could be longer. It just really gets started and it comes to an end. More examples would make it better and some of the suggested exercises for the reader could be turned in to worked examples.
if you are looking for a short introduction to App Inventor this isn't a bad choice, but it doesn't help with the basics.
To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.
Hello App Inventor!
App Inventor 2
All About Android Books
App Inventor: Create Your Own Android Apps