Programming Android

Author: Zigurd Mednieks, Laird Dornin, G. Blake Meike & Masumi Nakamura
Publisher:O'Reilly
Pages: 502
ISBN: 978-1449389697
Aimed at: Proficient programmers who want to get up to speed on Android
Rating: 4.5
Pros: Covers advanced topics in depth
Cons: Not suitable for beginners; no big examples
Reviewed by: Harry Fairhead

 

Programming Android - it's a bold title but it doesn't tell you much about the book. Who is it aimed and what makes it special?

The clue to this is in its subtitle, "Java programming for the new generation of mobile devices", but even this doesn't tell the full story.

The book is divided into four parts and Part I is titled Tools and Basics. As you would expect it starts off with installing the tools you need to create an Android application. The instructions are angled towards Linux, but they are fairly vague and the comments on what you need should be enough for you to install everything. This is clearly not a step-by-step book. As well as the major tools such as the Eclipse add-in it also goes over what some of the small command line utilities are for, something most books miss.

Chapter 2 is, surprisingly, an introduction to Java. Most Android books start off expecting you to know Java and usually get to a Hello World example in Chapter 1 - not so here. You do get to load and run the supplied Hello World but the book doesn't use this as a starting point to explain how an Android app works.


Banner

 

The introduction to Java isn't low level enough for the complete beginner. It is, however, more or less enough Java for the C#, C++ or Objective C programmer to get up to speed on some of the Java idioms and practices. This is aimed at the experienced programmer and this is why we don't get much in the way of practical examples early on.

Chapter 3 goes over the ingredients of an Android app and this doesn't start with the UI - the easy part. It outlines the deeper structure - Activities, Intents and tasks, services, content providers, broadcast receiver and so on. It also goes into the Dalvik VM and the activity life cycle. This is another chapter aimed at the experienced programmer. If you are new to programming or mobile programming you probably will find this tough going but if you want to be brought up to speed on Android this is a quick way of doing it.

Chapter 4 is about issues of deployment - application signing, the Android market and using Google maps.  This is probably out of place and could be later in the book. Chapter 5 explains how to use Eclipse - which you can skip if you already know how but if you have moved from another IDE it is very helpful. The final chapter of the section is on effective Java for Android. A closer look at how Android effects the way Java is used - libraries, concurrency and serialization.

At the end of Part I we certainly haven't had a practical introduction to Android but if you are an experienced programmer new to Java it will all have helped.

Part II is called About the Android Framework and it focus on some intermediate aspects of using Android. Chapter 7 is about using the View to build a GUI. This isn't the sort of introduction that lists all of the different components you could use. It is again a fairly high level look at the relationship between View and Controller and how to organize things. This approach continues in Chapter 8, where we look at fragments and working with different versions of Android. Chapter 9 goes over 2D and 3D graphics, including a quick introduction to OpenGL. The final chapter of this section is on handling persistent data and its is a fairly in depth look at SQLite.

Part III is called A Skeleton Application for Android.This sounds more hands-on but there is still a lot of theoretical discussion. Chapter 11 looks at what makes a well behaved application in terms of its lifecycle. The rest of the section is on content providers and presents the idea of a network MVC design.

The final part of the book is simply called Advanced Topics. Surprisingly this is much more like the standard introductory books on Android and goes over the usual topics - multimedia, location, sensors, communication and finally the NDK.

There are example applications presented later in the book but this isn't the reason to read it. If you are looking for a book that starts off with a simple example and works its way up to something more complicated then you are most likely going to hate this book. It is a book suitable for the reasonably capable programmers and most of the time it tells you things that will only make sense if you have written a program or two.

It's a perfect book if you want to convert from another mobile platform or from another language to Android. Not so good if you are a complete beginner or if you are expecting lots of step-by-step instructions or a set of graduated examples. As long as you fit into the category of ideal reader then this is a very good book and highly recommended.


Banner


Accelerating Software Quality

Author: Eran Kinsbruner
Publisher: Perforce
Pages: 357
ISBN: 978-8671126044
Print: B08FKW8B9B
Kindle:B08FKWD2TR
Audience: Devops developers
Rating: 3
Reviewer: Kay Ewbank

With a subtitle of 'machine learning and artificial intelligence in the age of devops', this book certainly sounds as though it fits c [ ... ]



Pro SQL Server 2019 Administration

Author: Peter Carter
Publisher: Apress
Pages: 940
ISBN: 978-1484250884
Print: 1484250885
Kindle: B07ZC1XC9Z
Audience: SQL Server DBAs
Rating: 5
Reviewer: Kay Ewbank

Administering SQL Server can seem like a dark art; this book aims to make it more transparent.


More Reviews

Last Updated ( Friday, 25 November 2011 )