What .NET C# developers need
to enter the hot field of iPhone apps
iPhone applications offer a hot opportunity for developers. Until the
open source MonoTouch project, this field was limited to those familiar
with Apple’s programming languages. Now .NET and C# developers can join
the party. Professional iPhone Programming with MonoTouch and .NET/C#is
the first book to cover MonoTouch, preparing developers to take
advantage of this lucrative opportunity.
This book is for .NET developers that are interested in creating native
iPhone applications written in .NET/C#. These developers want to use
their existing knowledge. While .NET developers are always interested in
learning, they also recognize that learning Objective-C and the
specifics of the iPhone can be overwhelming. Those developers interested
in MonoTouch will recognize that the cost of MonoTouch is easily made
up by the ability to quickly target the iPhone using a language that
they are already familiar with.
This book is designed for .NET developers that want to target the
iPhone. It is designed to help you get up to speed with the iPhone, not
to really teach you about the .NET Framework or C# language, which we
assume you already know.
This book is designed with introductory material in Chapters 1 thru 4.
You should read Chapters 1 thru 4 sequentially. These chapters introduce
the MonoTouch product, the basics of developing with MonoTouch and
MonoDevelop, and finally, the basics of presenting data to a user with
screen and data controls and how to develop a user interface for the
iPhone. Once you are comfortable with these concepts, you can typically
move from one chapter to another and not necessarily have to read the
- Chapter 1 "Introduction to iPhone Development with MonoTouch
C# Developers"This chapter looks at how the largest segment of
developers can target the smartphone with the highest mindshare, and
that the smartphone is growing faster in marketshare than any other
- Chapter 2 "Introduction to MonoTouch"gives you a
foundation in MonoTouch, MonoDevelop, Interface Builder, debugging, and
- Chapter 3 "Planning Your App's UI: Exploring the
you about creating your application's UI and specifically how the UI on
the iPhone can differ from UIs that you might have created before. You
also explore the Input & Value objects from the Interface Builder
- Chapter 4 "Data Controls" shows the
Interface Builder Objects
Library Cocoa Touch classes for Controllers, Data Views, and Windows,
Views, & Bars.
- Chapter 5 "Working with Data on the
iPhone"looks at the
SQLite database engine as well as strategies to store data off the
device on a central server through SOAP and REST (using XML and JSON)
without tying up the user interface.
- Chapter 6 "Displaying
Data Using Tables"looks at displaying
information in a table, using tables for navigation, taking advantage of
UITableView's built-in editing features, and adding a search bar to a
- Chapter 7 "Mapping"covers CoreLocation and MapKit,
Location Services, and adding maps and geocoding to your application.
8 "Application Settings"focuses on application
settings, and looks at two aspects of settings for your MonoTouch app:
the Info.plist and your settings bundle. It covers what settings you
might want to set in your Info.plist and why, and then looks at what
code it takes to read and use the settings that you save in the settings
bundle. And it also takes you through the building of the settings that
you might have in a social media-type application. Going through each
step, you will examine the Root.plist inside the Property List Editor
and see the settings dialog that will result from it.
9 "Programming with Device Hardware" covers
accelerometer device orientation, and proximity detection support,
networking, and developing with battery life in mind.
10 "Programming with Multimedia" discussing
integrating images and the image picker, watching and recording videos,
playing and recording audio, and using animation
- Chapter 11
"Talking to Other Applications"discusses the ways
you can use MonoTouch to talk to other applications on the iPhone, both
Apple-built applications and those downloaded from the App Store. It
also provides helpful ways of accessing the iPhone's Address Book and
the iPod music library.
- Chapter 12 "Localizing for an
International Audience" first
defines internationalization and localization, then shows displaying
translated text and images, formatting dates, times, and numbers, then
extracting text for translation.
- Chapter 13 "Programming the
iPad" the capabilities of the
iPad are, what new APIs and controls have been introduced that you can
use in iPad-specific applications, and how to build applications that
can work on both iPad and iPhone devices.
- Chapter 14 "Just
Enough Objective-C" provides you with a
reference and introduction to Objective-C that will help you acquire an
ability to comprehend Objective-C which is something that will come in
- Chapter 15 "The App Store: Submitting and
Marketing Your App"discusses
all things App Store. First, it talks about the process that you need
to go through before you are ready to submit - this includes final
testing with Ad-Hoc builds and a presubmission checklist. Next it
addresses actually submitting to the App Store, and then finally what to
do with your app after it's in the App Store. This chapter also touches
on alternative monetization strategies such as ads or in app purchases.
There has been a lot
of discussion about Apple's SDK licensing restrictions and how they
effect MonoTouch. As of the time of this writing, Apple has not
rejected any apps that are written in MonoTouch for inclusion in the
Apple App Store.