Developer Reading List
, December 03, 2013 Ruby, Python, ASP.NET, Android development, PDF, and more.
Murach's Android Programming
by Joel Murach
The Murach series of tutorials are carefully designed volumes that aim to be self-paced tutorials. They present the principal topic as a series of bite-sized (almost always two pages) explanations that build on each other. Almost every nugget starts with the words "How to…" and this get-it-done orientation pervades the book. It's a supremely hands-on approach that works well. Judging by the reviews in various forums, this pedagogical style goes over very well. (So much so, that I'm surprised other publishers have not seized upon this approach.) While it might not be to everyone's liking, it is particularly well suited to topics that contain many sub-topics. And few topics today are more filled with smaller discrete and independent tasks than Web programming and mobile development. As the title suggests, the author is squarely attacking the latter (although, predictably, the topic does drift into the former).
Murach presumes only Java in the reader's skill set. He starts by explaining the basic operations: How to use Eclipse for Android development; how to move code to the device; testing; debugging; and so on. Much of the book is dedicated to layouts, widgets, themes, events, and the other core elements of the user experience (UX).
He then moves into more-challenging topics: services, notifications, location (and maps), and even running the SQLite database on Android. There is no scrimping on the contents here. The chapter on using SQLite, for example, is 40 pages in length plenty to show how to do the necessary prep, create a database, access it, and add/update data. That is, exactly what you'd hope to get from a tutorial.
In the last few sections, the book explains how to deploy a finished app and publish it on Google Play.
The tone of the work is friendly and approachable. The explanations are clear, supported by many images for the UI examples (black and white images in the hard copy version, color in the eBook), and invariably backed by clear code with illustrative quality that is never lost in details of little relevance.
Overall, this is an excellent volume and almost certainly the best place to start for Java developers new to Android programming.