New book: Architecting Mobile Solutions for the Enterprise

We’re happy to announce the availability of Architecting Mobile Solutions for the Enterprise, by the well-known and prolific author Dino Esposito.

This book is an architectural guide to a paradigm shift. Paradigm shifts just happen—and mobile represents a big one. Mobile enables both new business scenarios and new ways of doing the same business, and the shift is affecting nearly everyone, meaning that writing mobile applications is a challenge that the vast majority of developers will face in the near future.

Mobile refers to a variety of platforms, each with its own set of capabilities and features, and each of which requires significantly different skills: different operating systems, different programming languages, different APIs and even different computers. A mobile application is more sophisticated and more complex than web applications with regard to resource management, data entry, sensors, data storage and life cycle. Furthermore, each operating system then has its own set of development guidelines and a proprietary deployment model.

This book is intended as a guide to various issues you may face during development of a mobile project for one or multiple platforms. It starts by analyzing the various types of mobile solutions, which include web sites, web sites optimized for mobile devices, and native mobile applications, and then proceeds to identify a few design patterns common to all mobile applications and technologies available on the various platforms. Predictive fetch, offline behavior, mobile-aware service layer, save-the-tap, and sensitive-data storage are just a few of the patterns being discussed and implemented. The book puts considerable emphasis on mobile sites and frameworks, and on techniques to accurately detect browser capabilities. For example, the book offers a chapter on WURFL—the framework being used by Facebook for mobile device detection—and compares that to the detection capabilities in plain ASP.NET.

Furthermore, the book offers an overview of mobile development for the three major platforms—iOS, Android, and Windows Phone. This book builds the same application for all three platforms, discussing tools, frameworks, practices, and illustrating architectural and structural differences along the way. Finally, the book covers PhoneGap and HTML5-based development for mobile devices.

After reading this book, you probably won’t be a super-expert in any of those platforms but you’ll know enough to start producing code on any of the most popular devices. You’ll also know enough to advise your customers and help them define effective mobile strategies for their business.

You can view the complete table of contents below, and you can purchase the book here:

Going Mobile

Chapter 1 : Pillars of a Mobile Strategy

What Does “Going Mobile” Mean?
Outlining a B2C Strategy
Outlining a B2B Strategy

Chapter 2 : Mobile Sites vs. Native Applications

Not a Pointless Matter
Aspects of Mobile Sites
Aspects of Native Applications

Mobile Sites

Chapter 3 : Mobile Architecture

Focusing on Mobile Use-Cases
Mobile-Specific Development Issues

Chapter 4 : Building Mobile Websites

From Web to Mobile
Development Aspects of a Mobile Site
The Device-Detector Site

Chapter 5 : HTML5 and jQuery Mobile

jQuery Mobile Fast Facts
HTML5 Fast Facts

Chapter 6 : Developing Responsive Mobile Sites

A Developer’s Perspective of Device Detection
Inside WURFL
Implementing a Multiserving Approach

Mobile Applications

Chapter 7 : Patterns of Mobile Application Development

Mobile Applications Are Different
Patterns for Interaction
Patterns for Presentation
Behavioral Patterns

Chapter 8 : Developing for iOS

Getting Ready for iOS Development
Programming with Objective-C
Programming with MonoTouch
Deploying iOS Applications

Chapter 9 : Developing for Android

Getting Ready for Android Development
Programming with the Android SDK

Chapter 10 : Developing for Windows Phone

Getting Ready for Windows Phone Development
Programming with the Silverlight Framework
Deploying Windows Phone Applications

Chapter 11 : Developing with PhoneGap

The Myth of Cross-Platform Development
Building an HTML5 Solution
Integrating with PhoneGap