Welcome!

iPhone Authors: Jnan Dash, Shelly Palmer, Kevin Benedict, Sarah Lake, Onkar Singh

Related Topics: Wireless, Java, .NET, Web 2.0, iPhone, Open Web

Wireless: Book Review

Book Review: Learning Mobile App Development

A Hands-on Guide to Building Apps with iOS and Android

As an individual I can decide which platform I would like to target with my shiny new application, but when working for a company we have to target both industry leaders at the same time. Although I like a good challenge, I am really glad the mobile world now only consists of iOS and Android.

When I first started looking at building consumer applications, Blackberry was still in the picture. My enterprise mobile experience consists of all Microsoft technologies, but that was in a different lifetime using Windows CE, Pocket PC, and Windows Mobile.

This book is a great book for looking at how some of the most commonly used functionality compares across the Android and iOS environments. I have listed the table of contents below to give you an idea of what topics are covered.

Part I: Overview of Mobile App Development
1. Why Mobile Apps?
2. App Design Issues and Considerations

Part II: Developing the Android App
3. Using Eclipse for Android Development
4. Android Navigation and Interface Design
5. Persistent Data in Android
6. Lists in Android: Navigation and Information Display
7. Maps and Location in Android
8. Access to Hardware and Sensors in Android

Part III: Developing the iOS App
9. Using Xcode for iOS Development
10. iOS Navigation and Interface Design
11. Persistent Data in iOS
12. Tables in iOS: Navigation and Information Display
13. Maps and Location in iOS
14. Access to Hardware and Sensors in iOS

Part IV: Business Issues
15. Monetizing Apps
16. Publishing Apps

Part V: Appendixes
A. Installing Eclipse and Setup for Android Development
B. Installing Xcode and Registering Physical Devices
C. Introduction to Objective-C

The authors tell us in the beginning of the book that it "is not intended to be a comprehensive work on the subject. The book assumes programming knowledge. At a minimum you should have taken at least one college-level course in the Java or C programming languages." and "Experience with an IDE is a plus." I completely agree.

I think that you should also have some experience with Objective-C. Although the authors provide an introduction to Objective-C, I am glad I had prior experience. I also think you should have a decent grasp of Android concepts like Activities, Layouts, Fragments, and Intents. Neither are needed, while at the same time having both helped me.

What about Swift's impact? Swift put a big crinkle into a lot of people's learning plans. I know that as soon as it was announced a lot of people dropped out of training they had planned. While getting started in Objective-C may not 'seem' to make sense, continuing to learn the iOS libraries used to accomplish framework tasks does.

Also, I don't think it is going to be possible for an iOS developer to not know their Objective-C and C. In other words, I still think it makes sense to continue with your Objective-C learning plans. I have no plans to stop learning either one anytime soon. So the short answer is, that in my opinion, this book is as relevant now as it was the day before the Swift announcement was made.

The authors make the chapter's code samples available for download. I ran into several issues getting some of the projects to compile and run in both the Android and the iOS code. I got most of them running in a relatively short period of time. I didn't have the time, or the need, to get the rest of them working.

The quality of the book itself is great. It is printed on high quality paper, and it is in color. Color always makes reading the code easier and is much nicer when looking at screenshots of the apps, Eclipse, Xcode, or dialogs.

My favorite part of the book is being able to flip back and forth between the iOS and Android topics to see how each platform handles the implementation of the topic's functionality. The book has really come in handy with the current project I've just started. We are developing an Android and iOS client which will run against a RESTful service implemented with Microsoft's ASP.NET Web API framework.

All in all I think this is a great read for those that need to develop for both Android and iOS.


Learning Mobile App Development: A Hands-on Guide to Building Apps with iOS and Android

Learning Mobile App Development: A Hands-on Guide to Building Apps with iOS and Android

More Stories By Tad Anderson

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