Learning iPad Programming: A Hands-On Guide to Building iPad Apps [NOOK Book]


“Not many books have a single project that lives and evolves through the entire narrative. The reason not many books do this is because it is difficult to do well. Important toolkit features get shoehorned in weird places because the author didn’t do enough up-front design time. This book, though, takes you from design, to a prototype, to the Real Deal. And then it goes further.”

—Mark Dalrymple, cofounder of CocoaHeads, the international Mac and iPhone programmer community; author of Advanced Mac OS X ...

See more details below
Learning iPad Programming: A Hands-On Guide to Building iPad Apps

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK 7.0
  • Samsung Galaxy Tab 4 NOOK 10.1
  • NOOK HD Tablet
  • NOOK HD+ Tablet
  • NOOK eReaders
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac

Want a NOOK? Explore Now

NOOK Book (eBook)
BN.com price
(Save 44%)$35.99 List Price


“Not many books have a single project that lives and evolves through the entire narrative. The reason not many books do this is because it is difficult to do well. Important toolkit features get shoehorned in weird places because the author didn’t do enough up-front design time. This book, though, takes you from design, to a prototype, to the Real Deal. And then it goes further.”

—Mark Dalrymple, cofounder of CocoaHeads, the international Mac and iPhone programmer community; author of Advanced Mac OS X Programming: The Big Nerd Ranch Guide


Learning iPad Programming, Second Edition, will help you master all facets of iPad programming with Apple’s newest tools. Its in-depth, hands-on coverage fully addresses the entire development process, from installing the iOS SDK through coding, debugging, submitting apps for Apple’s review, and deployment.


Extensively updated for Apple’s newest iOS features and Xcode 4.x updates, this book teaches iPad programming through a series of exercises centered on building PhotoWheel, a powerful personal photo library app. As you build PhotoWheel, you’ll gain experience and real-world insights that will help you succeed with any iPad development project.


Leading iOS developers Kirby Turner and Tom Harrington introduce the essentials of iOS development, focusing on features that are specific to iPad. You’ll find expert coverage of key topics many iOS development books ignore, from app design to Core Data. You’ll also learn to make the most of crucial iOS and Xcode features, such as Storyboarding and Automatic Reference Counting (ARC), and extend your app with web services and the latest iCloud synching techniques.


Learn how to

  • Build a fully functional app that uses Core Data and iCloud synching
  • Use Storyboarding to quickly prototype a functional UI and then extend it with code
  • Create powerful visual effects with Core Animation and Core Image
  • Support AirPrint printing and AirPlay slideshows
  • Build collection views and custom views, and use custom segues to perform custom view transitions 

Download the free version of PhotoWheel from the App Store today! Import, manage, and share your photos as you learn how to build this powerful app.

Read More Show Less

Editorial Reviews

From the Publisher

“This amazing, thorough book takes an interesting approach by working through the design and development of a simple, yet realistic, iPad app from start to finish. It is refreshing to see a technical book that explains how and why without inundating you with endless toy examples or throwing you into a sea of mind-numbing details. Particularly amazing is that it does this without assuming a large amount of experience at first. Yet it covers advanced topics at sufficient depth and in a logical order for all developers to get plenty of valuable information and insight. Kirby and Tom know this material and have done a great job of introducing the various frameworks and the reasoning behind how, why, and when you would use them. I highly recommend Learning iPad Programming to anyone interested in developing for this amazing platform.”

—Julio Barros, E-String.com

“This is a great introduction to iPad programming with a well-done sample project built throughout. It’s great for beginners as well as those familiar with iPhone development looking to learn the differences in developing for the larger screen.”

—Patrick Burleson, Owner, BitBQ LLC (http://bitbq.com)

“Kirby Turner and Tom Harrington’s Learning iPad Programming provides a comprehensive introduction to one of today’s hottest topics. It’s a great read for the aspiring iPad programmer.”

—Robert Clair, Author, Learning Objective-C 2.0

Learning iPad Programming is now my go-to reference when developing apps for the iPad. This book is an absolute treasure trove of useful information and tips for developing on the iPad. While it’s easy to think of the iPad as just a bigger iPhone, there are specific topics that need to be treated differently on the iPad, such as making best use of the larger display. Learning iPad Programming provides an incredible amount of depth on all areas of iPad programming and takes you from design to fully functioning application—which for me is a killer feature of the book. This should be in everyone’s reference library.”

—Mike Daley, Author, Learning iOS Game Programming; Cofounder, 71Squared.com

“A truly well-rounded book with something for every iOS developer, be they aspirant or veteran. If you are new to iOS, there is a solid foundation provided in Part I that will walk you through Objective-C, the core Apple frameworks, provisioning profiles, and making the best of Xcode. If you’ve been around the block but want solid insight into iPad programming, Part II has you covered: Rather than just providing canned example code, Kirby and Tom give you real code that incrementally builds and improves a real app. And if you’ve been working with iOS for a while, but would benefit from a walk-through of the plethora of new features that have come our way with iOS 5 and Xcode 4, dive into the chapters on Storyboards, iCloud, and Core Image. Best of all, the book is well-written and conversational, making it a joy to read. This book is stellar.”

—Alexis Goldstein, Coauthor, HTML5 & CSS3 for the Real World

Learning iPad Programming is one of the most comprehensive resources on the planet for those developing for Apple’s iPad platform. In addition to coverage of the language, frameworks, and tools, it dives into features new in iOS 5, like Automatic Reference Counting, Storyboarding, and connecting your applications with iCloud. But where this book really shines is in the tutorials and the application you will build as you read through this book. Rather than being a toy that employs only off-the-shelf iOS user interface components from Interface Builder, the PhotoWheel app demonstrates custom view programming and view controller containment, nonstandard gesture/user input handling, and provides insight into how a complex iOS project comprised of multiple subsystems is assembled into a shipping application. In other words, Learning iPad Programming shows how to deal with the challenges you’ll face in real iPad development.”

—Erik Price, Senior Software Engineer, Brightcove

“A thoroughly crafted guide for learning and writing iOS applications, from the humble beginnings in Xcode and Interface Builder to creating a full-featured iPad application. There are many books that try to cover the gamut of knowledge required to take a reader from zero to app; Kirby and Tom have actually done it in this book. It is a fun and comprehensive guide to the world of developing apps for Apple’s magical device.”

—Rod Strougo, Founder, Prop Group

“The iPad is changing the way we think about and use technology. Learning iPad Programming is one of the most in-depth and well-executed guides to get both new and seasoned developers up to speed on Apple’s exciting new platform.”

—Justin Williams, Crew Chief, Second Gear

Read More Show Less

Product Details

  • ISBN-13: 9780133138672
  • Publisher: Pearson Education
  • Publication date: 5/27/2013
  • Series: Learning
  • Sold by: Barnes & Noble
  • Format: eBook
  • Edition number: 2
  • Pages: 800
  • Sales rank: 946,161
  • File size: 101 MB
  • Note: This product may take a few minutes to download.

Meet the Author

Kirby Turner is an independent software developer and Chief Code Monkey at White Peak Software Inc., where he focuses on iOS and Mac programming. When Kirby is not sitting behind the keyboard, he can be
found hanging out with his wife and son, hiking the mountains of New England, kayaking the waters in and around Salem, Massachusetts, and snowboarding down mountains in search of magic powder. Follow Kirby on Twitter and App.net: @kirbyt.

Tom Harrington is an independent iOS and Mac software developer and is available for contract work, technical conferences, and parties. He also  organizes iOS developer events in Colorado. Follow Tom on Twitter and App.net: @atomicbird.

Read More Show Less

Table of Contents

Foreword xxv

Preface xxix

Acknowledgments xlv

About the Authors xlvii


Part I: Getting Started 1


Chapter 1: Your First App 3

Creating the Hello World Project 3

Getting Text on the Screen 11

Say Hello 13

Summary 19


Chapter 2: Getting Started with Xcode 21

The IDE 21

Workspace Window 22

Preferences 29

Developer Documentation 37

Editors 38

Project Settings 40

Schemes 42

Organizer 43

Other Xcode Tools 44

Summary 45


Chapter 3: Getting Started with Interface Builder 47

Interface Builder 47

How Does IB Work? 48

Getting Hands-On Practice with IB 49

Connecting Your NIB to Your Code 61

Storyboards 70

Summary 70


Chapter 4: Getting Started with Objective-C 71

What Is Objective-C? 71

Hands-On Practice with Objective-C 72

Memory Management 93

Summary 95


Chapter 5: Getting Started with Cocoa 97

The Cocoa Stack 97

Foundation 99

UIKit 112

Common Design Patterns in Cocoa 121

Summary 123


Chapter 6: Provisioning Your iPad 125

About the iOS Provisioning Portal 125

The Provisioning Process: A Brief Overview 127

Setting Up Your Development Machine 130

Setting Up Your Device 138

Using the iOS Provisioning Portal 141

Summary 149


Chapter 7: App Design 151

Defining Your App 151

A Sample App Charter 156

UI Design Considerations 158

Mockups 164

Prototyping 171

Summary 173


Part II: Building PhotoWheel 175


Chapter 8: Creating a Master-Detail App 177

Building a Prototype App 177

A Closer Look 183

A Tour of UISplitViewController 189

Summary 195

Exercises 196


Chapter 9: Using Table Views 197

First Things First 197

A Closer Look 201

Working with a Table View 203

Summary 233

Exercises 234


Chapter 10: Using Collection and Custom Views 235

Collection Views 235

Custom Views 246

A Wheel View 248

A Carousel View 256

A Photo Wheel View Cell 263

Summary 268

Exercises 268


Chapter 11: Using Touch Gestures 269

Touch Gestures Explained 269

Custom Touch Gestures 275

Summary 283

Exercises 283


Chapter 12: Adding Photos 285

Two Approaches 285

Using the Image Picker Controller 286

Summary 299

Exercises 299


Chapter 13: Data Persistence 301

The Data Model 301

Building the Model with Core Data 302

Using Core Data in PhotoWheel 312

Adding Custom Code to Model Objects 321

Using SQLite Directly 335

Summary 336

Exercises 336


Chapter 14: Storyboarding in Xcode 337

What Is a Storyboard? 337

Storyboarding PhotoWheel 341

Summary 357

Exercises 357


Chapter 15: View Controllers and Segues 359

Implementing a View Controller 359

Container View Controllers 364

Segue 369

Customizing the Pop Transitions 381

Summary 385

Exercises 385


Chapter 16: Building the Main Screen 387

Reusing Prototype Code 388

Displaying Photo Albums 406

Managing Photo Albums 417

A Better Photo Album Thumbnail 430

Adding Photos 434

Displaying Photos 439

Summary 446

Exercises 446


Chapter 17: Creating a Photo Browser 447

Using the Scroll View 447

Launching the Photo Browser 456

Adding Chrome Effects 468

Zooming 474

Deleting a Photo 480

Summary 488

Exercise 488


Chapter 18: Supporting Device Rotation 489

How to Support Rotation 489

Customized Rotation 495

Launch Images 513

Summary 515

Exercises 516


Chapter 19: Printing with AirPrint 517

How Printing Works 517

Adding Printing to PhotoWheel 519

Summary 523

Exercises 524


Chapter 20: Sharing with Others 525

Sending Email 525

Activity View Controller 537

Summary 540

Exercises 540


Chapter 21: Web Services 541

The Basics 541

Flickr 543

One More Thing 575

What’s Missing 576

Summary 577

Exercises 577


Chapter 22: Syncing with iCloud 579

Syncing Made Simple 579

iCloud Concepts 580

Device Provisioning, Revisited 582

iCloud Considerations for PhotoWheel 586

Updating PhotoWheel for iCloud 588

Syncing Photos with iCloud 592

Going Further with iCloud 600

Summary 603

Exercises 603


Chapter 23: Producing a Slideshow with AirPlay 605

External Display Options 605

App Requirements for External Displays 606

External Display API 606

Attaching an External Display 607

Adding a Slideshow to PhotoWheel 609

Managing External Displays 613

Advancing to the Next Photo 617

Adding Slideshow User Interface

Controls 620

Updating the Photo Browser 622

Finishing Up 623

Summary 624

Exercises 624


Chapter 24: Visual Effects with Core Image 625

Core Image Concepts 625

Introducing CIFilter 627

Image Analysis 630

Adding Core Image Effects to PhotoWheel 633

Summary 651

Exercises 651


Chapter 25: Going Universal 653

Why Go Universal? 653

Making a Universal App 655

Pitfalls 659

Summary 661

Exercises 662


Part III: The Finishing Touches 663


Chapter 26: Debugging 665

Understand the Problem 665

Debugging Concepts 666

Debugging in Xcode 667

Debugging Example: External Display Code 675

When You Really Need NSLog 679

Profiling Code with Instruments 681

Summary 686


Chapter 27: Distributing Your App 689

Distribution Methods 689

Building for Ad Hoc Distribution 690

Building for App Store Distribution 694

The App Store Process 698

App Information for the App Store 700

App Store Assets 702

Using iTunes Connect 703

Submitting the App 705

Going Further 706

Summary 706


Chapter 28: The Final Word 707

What’s Next 708


Appendix: Installing the Developer Tools 709

Membership Has Its Privileges 709

Joining the iOS Developer Program 710

Which Program Type Is Right for You? 711

What You Need to Register 712

Installing Xcode 714


Index 717

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)