Home > Store > Programming > Windows Programming

larger cover

Add To My Wish List

Learning MonoTouch: A Hands-On Guide to Building iOS Applications with C# and .NET

Register your product to gain access to bonus material or receive a coupon.

  • Description
  • Extras
  • Reviews
  • Sample Content

Product Author Bios

Michael Bluestein has been working with MonoTouch since the first private beta release and is an active member of the MonoTouch community. His applications are among the first using MonoTouch to be published in Apple’s App Store. A former Principal Software Engineer at Dassault Systèmes Solidworks Corporation, he has developed software professionally since the early 90s. His blog on various development topics, including MonoTouch, can be found at mikebluestein.wordpress.com.

Develop State-of-the-Art iPhone/iPad Apps with MonoTouch and .NET!

 

Are you an experienced C#/.NET developer who wants to reach the huge iPhone/iPad market? Now, you can create great iOS apps without first mastering Objective-C and Apple’s development toolset. With MonoTouch, you can leverage the skills you already have to create powerful apps that can be sold in Apple’s App Store or deployed throughout your organization. In Learning MonoTouch, Michael Bluestein helps you get started with MonoTouch fast and make the most of its remarkably robust capabilities.

 

The book first walks you through setting up your MonoTouch development environment, explaining how MonoTouch abstracts the iOS SDK to permit development against native iOS classes from C#. Through simple examples, you’ll start building working apps, establishing a firm foundation for more advanced coding. One step at a time, you’ll master increasingly sophisticated cases through practical examples. Bluestein even shows you how to leverage powerful .NET tools in your iOS apps, including LINQ.

 

Coverage includes

• Applying common iOS development patterns and techniques in C#

• Using MonoTouch to handle memory management and garbage collection

• Structuring MonoTouch apps for the MVC design pattern

• Making the most of iOS user interface classes

• Leveraging the address book, camera access, email, and iOS media features

• Customizing tables and navigation for richer experiences and better performance

• Accessing the iOS Core Graphics and Core Animation subsystems

• Building iOS location-based applications with Core Location and MapKit

• Consuming web services from MonoTouch

• Integrating iOS and .NET networking capabilities

• Saving data with the ADO.NET provider to SQLite, .NET serialization, and NSUserDefaults

 

All code samples are available for download at github.com/mikebluestein.

Customer Reviews

2 of 2 people found the following review helpful
5.0 out of 5 stars Solid book for learning MonoTouch, December 5, 2011
This review is from: Learning MonoTouch: A Hands-On Guide to Building iOS Applications with C# and .NET (Paperback)
I have been developing with MonoTouch for about a year and have looked through a lot of material on using it to make effective apps for the iPhone. One of the issues that are now being corrected is access to good learning resources on the MonoTouch tool and how it can be used. There are a few gotcha's using MonoTouch that you find out normally through a collection of web sites, code samples and the like and it is difficult to find them in one place.

Learning MonoTouch does a good job of collecting a lot of this knowledge together. Even after a year of MonoTouch and ten years of C#, there were good things that I found in the book that made a good difference to the stability of the app.

Michael does a good job of describing how to use the tools and explain how the C# interfaces with the Cocoa libraries on iOS effectively and some of the problems you come across and how to correct them. The tip about the NSAutoReleasePool with threads was some very welcome... Read more
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4 of 5 people found the following review helpful
3.0 out of 5 stars Code formatting on kindle is unreadable, February 4, 2012
By 
Robert Johnson "NotMyself" (Olympia, WA United States) - See all my reviews
(REAL NAME)   
Amazon Verified Purchase(What's this?)
Picked up this book based on the all 5-star reviews. Sadly the code formatting on the kindle is horrible, especially the objective-c examples.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful
5.0 out of 5 stars Good book with good and detailed code samples, November 8, 2011
This review is from: Learning MonoTouch: A Hands-On Guide to Building iOS Applications with C# and .NET (Paperback)
We are working on a number of Monotouch projects and one thing I should say is that finding a good book describing monotouch framework is pretty hard thing.
In first chapters you will find Monotouch basics and tools and instruments you will need to use it. Next goes basic classes and iOS ideas that you will need.
One thing to note is that there are very detailed source samples and step by step instructions which help newcomers a lot. Every sample covers some real work task, so this book could be also considered as a cookbook for monotouch projects.
It would be better if Michael would add some information about using new XCode version 4 along with new Monodevelope 2.8. Right now this book covers only previous versions of this instruments.
But in general it's a pretty good tutorial I would recommend everyone who wants to start using C# on iOS.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


Share your thoughts with other customers:
 See all 11 customer reviews...

Online Sample Chapter

Learning MonoTouch: Common iOS Classes

Table of Contents

Preface     xiii

The Audience for This Book     xiii

About the Sample Code     xiv

Acknowledgments     xv

About the Author     xvi

Introduction     1

How This Book Is Organized     1

Chapter 1: Hello MonoTouch     1

Chapter 2: iOS SDK via MonoTouch    2

Chapter 3: Views and View Controllers    2

Chapter 4: Common iOS Classes     2

Chapter 5: Tables and Navigation     2

Chapter 6: Graphics and Animation    2

Chapter 7: Core Location     3

Chapter 8: MapKit     3

Chapter 9: Connecting to Web Services    3

Chapter 10: Networking     3

Chapter 11: Saving Application Data    3

Chapter 12: iPad Development     3

Chapter 1 Hello MonoTouch     5

Setting Up Your Environment     5

Installing the iOS SDK and Apple Developer Tools     5

Installing MonoTouch     10

Creating a MonoTouch Application     14

Creating the User Interface     14

Adding Outlets     16

Developing on the Device     24

Provisioning for Development     24

Using the MonoTouch Debugger    29

Summary     31

Chapter 2 iOS SDK via MonoTouch     33

iOS SDK Overview     33

Objective-C Versus MonoTouch By Example     35

Getting the App Started from Xcode    36

Implementing the Same Functionality with MonoTouch     41

Comparing the AppDelegate Implementations     43

Implementing UIActionSheet via Xcode     46

Implementing UIActionSheet in MonoTouch     48

How MonoTouch Works     52

Memory Management     54

Summary     56

Chapter 3 Views and View Controllers     57

Structuring a MonoTouch Application to MVC     57

Working with Views and Controllers in Interface Builder     59

Adding Functionality to a View Controller and Its View     67

Working with Multiple Views and Controllers     71

Implementing a Custom UIView     75

Summary     80

Chapter 4 Common iOS Classes     81

User Interface Views and Controls    81

UISegmentedControl     81

UISlider    85

UISwitch     88

UIPageControl and UIScrollView     89

UIActivityIndicatorView     92

UIProgressView     94

UIImageView     95

UIWebView     97

ADBannerView     100

Device Capabilities    103

MFMailComposeViewController     103

MPMediaPickerController and MPMusicPlayerController     105

Address Book     108

UIImagePickerController    111

Summary     116

Chapter 5 Tables and Navigation    117

Introduction to UITableView and UITableViewController    117

What Are Tables Used For?     117

Displaying Data in a UITableView     119

UITableViewCell Parts and Styles     125

Using Tables and Navigation     128

Additional UITableView Customizations     144

Customizing Tables Further with Custom Cells    144

Adding Multiple Sections     148

MonoTouch.Dialog     153

Summary 155

Chapter 6 Graphics and Animation     157

Core Graphics     157

Core Graphics Fundamentals     157

Drawing Images     165

Drawing PDFs    170

Animation     180

UIView Animation     181

Core Animation    185

Summary     194

Chapter 7 Core Location     195

Introducing Core Location     195

Standard Location Service     197

Retrieving Heading Updates     207

Significant Location Changes     209

Region Monitoring    211

Background Location    214

Summary     216

Chapter 8 MapKit     217

Introducing MapKit     217

Adding Annotations     224

Map Overlays     233

Summary     240

Chapter 9 Connecting to Web Services    241

Connecting to REST-based Web Services     241

Connecting over HTTP     241

Parsing XML Results     244

Parsing JSON Results    247

Consuming SOAP-based Web Services     248

Using a .NET 2.0 Client Proxy    248

WCF under MonoTouch     250

Using CocoaTouch HTTP Classes     251

Using NSUrlConnection and Friends     252

Summary     254

Chapter 10 Networking     255

GameKit Networking     255

Core GameKit Networking Classes     255

Using GKPeerPickerController     264

GameKit Voice Chat    268

Bonjour    272

Summary    281

Chapter 11 Saving Application Data    283

The Notes Sample Application     283

SQLite     289

Serialization     295

Settings Bundle and NSUserDefaults     297

Summary     306

Chapter 12 iPad Development    307

Porting to iPad    307

iPhone Applications with Pixel Doubling    307

Universal Applications    308

Designing for the iPad     311

UISplitViewController     312

UIPopoverController    323

Summary     326

Index    327

Sample Pages

Download the sample pages (includes Chapter 4 and Index)

 
Best Value

Book + eBook Bundle  $80.98  $48.59

Book Price $35.99
eBook Price $12.60
eBook formats included

Buy

This book includes free shipping!

Buy

Book  $44.99  $35.99

Usually ships in 24 hours.

This book includes free shipping!

Buy

eBook (Watermarked)  $35.99  $28.79

Includes EPUB, MOBI, and PDF
About eBook Formats

This eBook includes the following formats, accessible from your Account page after purchase:

ePubEPUBThe open industry format known for its reflowable content and usability on supported mobile devices.

MOBIMOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

Adobe ReaderPDFThe popular standard, used most often with the free Adobe® Reader® software.

This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.

Purchase Reward: One Month Free Subscription
By completing any purchase on InformIT, you become eligible for an unlimited access one-month subscription to Safari Books Online.

Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.