Home > Store > Mobile Application Development & Programming > iOS
iPhone Programming: The Big Nerd Ranch Guide
- By Aaron Hillegass, Joe Conway
- Published Apr 13, 2010 by Big Nerd Ranch Guides. Part of the Big Nerd Ranch Guides series.
- Copyright 2010
- Dimensions: 7 X 10
- Pages: 480
- Edition: 1st
- Book
- ISBN-10: 0-321-70624-2
- ISBN-13: 978-0-321-70624-9
Register your product to gain access to bonus material or receive a coupon.
Product Author Bios
Joe Conway, iPhone instructor for The Big Nerd Ranch, has been writing software on the Mac platform since he was a teenager, and began consulting and training for The Big Nerd Ranch shortly after graduating from the University of Wisconsin.
Aaron Hillegass, CEO of Big Nerd Ranch, has more than 18 years of experience as a software engineer and developer trainer. He wrote the Big Nerd Ranch course on Cocoa, drawing from his experiences working at Apple and NeXT as senior trainer and curriculum developer. He is author of Cocoa Programming for Mac OS X (Addison-Wesley), the definitive guide to Cocoa programming.
Based on Big Nerd Ranch’s popular iPhone Bootcamp class, iPhone Programming: The Big Nerd Ranch Guide leads you through the essential tools and techniques for developing applications for the iPhone, iPad, and iPod Touch. In each chapter, you will learn programming concepts and apply them immediately as you build an application or enhance one from a previous chapter. These applications have been carefully designed and tested to teach the associated concepts and to provide practice working with the standard development tools Xcode, Interface Builder, and Instruments. The guide’s learn-while-doing approach delivers the practical knowledge and experience you need to design and build real-world applications. Here are some of the topics covered:
- Dynamic interfaces with animation
- Using the camera and photo library
- User location and mapping services
- Accessing accelerometer data
- Handling multi-touch gestures
- Navigation and tabbed applications
- Tables and creating custom rows
- Multiple ways of storing and loading data: archiving, Core Data, SQLite
- Communicating with web services
- ALocalization/Internationalization
Related Articles
Deploying iPhones and iPads on Your Network
Taking a Monastic Approach to Apple Programming: An interview with Aaron Hillegass
Discussion
Book Forum: http://forums.bignerdranch.com/viewforum.php?f=9
|
91 of 92 people found the following review helpful
By
Amazon Verified Purchase(What's this?)
This review is from: iPhone Programming: The Big Nerd Ranch Guide (Big Nerd Ranch Guides) (Paperback)
If you plan on picking up a book about iPhone programming, you've found the right one.I have a *ton* of iPhone books (and programming books, in general), and this sits at the top of the heap. The book is easy to read and understand, and the code provided is reusable (bonus!). It's obvious the material is derived from an experienced team. Ultimately I've found that I can "trust" the problems/solutions laid out in the book, since it's coming from The Big Nerd Ranch (search for it if you're not familiar). 5+ stars. My 3 book recommendation for iPhone: 1) iPhone Programming (this book) 2) Programming in Objective-C (Kochan) 3) Cocoa Design Patterns (Buck, Yacktman)
69 of 72 people found the following review helpful
By Samer A "Samer" (Texas,USA) - See all my reviews
This review is from: iPhone Programming: The Big Nerd Ranch Guide (Big Nerd Ranch Guides) (Paperback)
I move from software technologies almost yearly, starting with PHP to ASP.NET and now starting iPhone development, so each year is basically another library of books I have to buy to teach myself the language. I've read a ridiculous amount of computer books, ranging from the terrible (super boring, dense) to the insultingly easy ones (that basically treat you like a 4th grader learning programming.)This, thankfully, is a fantastic mix of being incredibly easy to pick up and read, and also super informative. As far as iPhone development goes, this will be my 4th introductory book I've picked up, trying to get a handle on developing for the platform. The other books all typically tend to throw you into immediately coding, and never really actually explain why you're doing what you're doing, or make sense of any of it. Yes, this book does start off with an example chapter that you basically just copy word for word, but that's mostly to get your feet wet before actually... Read more
44 of 45 people found the following review helpful
By
Amazon Verified Purchase(What's this?)
This review is from: iPhone Programming: The Big Nerd Ranch Guide (Big Nerd Ranch Guides) (Paperback)
I love this book. I like the style and honesty of the author. Go right to the point. Is not boring. This is my 3rd iPhone Programming book. I love Jeff LaMarche too (It is also, a great intro to iPhone development). But, I think this one is less cluttered. I got the book yesterday (April 20, 2010). In two hours I read up to chapter 4 (I liked chapter 3 - Memory Management). Good introduction. The combination of XCode screen shots and UML charts are excellent complements to the text. I recommend this book (and Kochan, Objective-C programing book, latest edition) to anyone who wants learn how to program the iPhone. It is sad, that they don't have a chapter on OpenGL-ES, but it looks like the authors are planning to put together a book alone on this subject. I can't wait!. IMHO, Mr. Hillegas and his group, have (or has) mastered the art of communicating knowledge to the masses.
|
› See all 80 customer reviews...
Table of Contents
Introduction
- Prerequisites
- Typographical Conventions
- Hardware and Software
- How to Use This Book
- Learning is not Fun
Chapter 1: Simple iPhone Application
- Creating an Xcode Project
- Using Interface Builder
- Model-View-Controller
- Declarations
- Declaring instance variables
- Declaring methods
- Making Connections
- Setting pointers
- Setting targets and actions
- Summary
- Implementing Methods
- Event-driven Programming
- Deploying an Application
- Application Icons
- Default Images
Chapter 2: Objective-C
- Objects
- Instances
- Creating an instance
- Sending messages
- Destroying an instance
- Writing the RandomPossessions Tool
- NSArray and NSMutableArray
- Subclassing an Objective-C Class
- Instance variables
- Accessors and properties
- Instance methods
- Initializers
- self
- super
- Initializer chain
- Class methods
- Exceptions and the Console Window
- Objective-C 20 Additions
Chapter 3: Memory Management
- Memory Management Concepts
- Managing memory in C
- Objects and memory management
- Reference Counting
- Using retain counts
- Avoiding memory leaks with autorelease
- Managing memory in accessors and properties
- Retain count rules
- Managing Memory in RandomPossessions
Chapter 4: Delegation and Core Location
- Delegation
- Beginning the Whereami Application
- Using frameworks
- Core Location Service
- Receiving Updates from CLLocationManager
- For the More Curious: Compiler and Linker Errors
- For the More Curious: Protocols
- Challenge: Heading
Chapter 5: MapKit and UITextField
- Object Diagrams
- MapKit Framework
- Interface Properties
- Being a MapView Delegate
- Your Own MKAnnotation
- Tagging Locations
- Renaming an Application
- Challenge: Annotation Extras
- Challenge: Reverse Geocoding
Chapter 6: Subclassing UIView
- Creating a Custom View
- The drawRect: Method
- Instantiating a UIView
- Drawing Text and Shadows
- Using UIScrollView
- Zooming
- Hiding the Status Bar
- For the More Curious: Retain Cycles
- For the More Curious: Redrawing Views
- Challenge: Colors
Chapter 7: View Controllers
- Using View Controllers
- Creating the UITabBarController
- Creating View Controllers and Tab Bar Items
- Creating Views for the View Controllers
- viewWillAppear:
- The Lifecycle of a View Controller
- For the More Curious: Paging
- Challenge: Map Tab
Chapter 8: The Accelerometer
- Setting Up the Accelerometer
- Getting Accelerometer Data
- Orientation and Scale of Acceleration
- Using Accelerometer Data
- Smoothing Accelerometer Data
- Detecting Shakes
- Challenge: Changing Colors
Chapter 9: Notification and Rotation
- Notification Center
- UIDevice Notifications
- Autorotation
- Forcing Landscape Mode
- For the More Curious: Overriding Autorotation
- Challenge: Proximity Notifications
Chapter 10: UITableView and UITableViewController
- Beginning the Homepwner Application
- UITableViewController
- Subclassing UITableViewController
- UITableView's Data Source
- UITableViewDataSource protocol
- UITableViewCells
- Reusing UITableViewCells
- Next Steps for Homepwner
- Challenge: Sections
Chapter 11: Editing UITableViews
- Editing a UITableView
- Begin and End Editing
- Deleting Rows
- Moving Rows
- Inserting Rows
Chapter 12: UINavigationController
- UINavigationController
- UINavigationBar
- An Additional UIViewController
- The XIB File and File's Owner
- Setting Up ItemDetailViewController
- Navigating with UINavigationController
- Appearing and Disappearing Views
- Challenge: Number Pad
Chapter 13: Camera
- ImageCache: a Singleton
- NSDictionary
- Singletons
- UIImageView
- Giving Possessions an Image
- UUIDs
- Dismissing the Keyboard
- Challenge: Removing an Image
Chapter 14: Saving and Loading
- Application Sandbox
- Archiving
- Writing Other Data to Disk
- More on Reading and Writing to Disk
- Challenge: Archiving Wherewasi
Chapter 15: Low Memory Warning
- Low Memory Warning
- Handling Low Memory Warnings
- Be Careful
- Simulating Low Memory Warnings
Chapter 16: UITableViewCell
- Subclassing UITableViewCell
- Image Manipulation
- Archiving the Thumbnail Data
- Challenge: Accessory Views
- Challenge: Making it Pretty
Chapter 17: Multi-Touch
- Create a Drawing Program
- Touch Events
- The Responder Chain
- Instruments
- The ObjectAlloc Instrument
- The Sampler Instrument
- For the More Curious: UIControl
- For the More Curious: Touch Dependancy
- Challenge: Saving and Loading
- Challenge: Circles
Chapter 18: CALayer
- Creating a CALayer
- Layer Content
- Implicitly Animatable Properties
- For the More Curious: Programmatically Generating Content
- For the More Curious: Layers and Views
- Challenge: Dynamic Layer Content
Chapter 19: CAAnimation
- Spinning the Time with CABasicAnimation
- Timing Functions
- CAKeyframeAnimation
- For the More Curious: Presentation and Model Layers
- Challenge: More Animation
Chapter 20: Media
- The MediaPlayer Application
- Playing System Sounds
- Playing Audio Files
- Playing Movie Files
- Low-level APIs
- Challenge: Audio Recording
Chapter 21: Web Services
- The RandomNumbers Application
- Fetching data from a URL
- Parsing XML
- For the more curious: The Request Body
- For the more curious: Credentials
- Challenge: Cancel Fetch
Chapter 22: Address Book
- The People Picker
- Additions to Possession Class
- Address Book Functions
- For the More Curious: That Other Delegate Method
Chapter 23: Localization
- Internationalizing Homepwner
- NSLocale
- Localized Resources
- Strings Tables
- For the More Curious: NSBundle
Chapter 24: Bonjour
- Publishing a Service
- Browsing for Services
- TXT Record
- For the More Curious: Socket Connections
Chapter 25: Settings
- Settings Bundle
- NSUserDefaults
- Registering Defaults
- Using the defaults
Chapter 26: SQLite
- What Am I doing?
- The Interface
- Making the database
- Fetching
- Making and Using the Tree
- Challenge: Fetching more Data
Chapter 27: Core Data
- Inventory
- Edit the Model File
- AppController
- LabelSettingViewController
- LocationListViewController
- AssetListViewController
- CountViewController
- How it Works
- Trade-offs of Persistence Mechanisms
- Challenge: Deleting
Chapter 28: OpenGL ES
- Setting up an OpenGL ES Project
- Creating an OpenGL ES Capable View
- Creating the EAGLContext
- Frame and Render Buffers
- Creating the Timer
- The Rendering Method
- The Rendering Controller
- Rendering Shapes in OpenGL ES
- Start and Stop Animation
Sample Pages
Download the sample pages (includes Chapter 3 and Index)
Book
This product currently is not for sale.
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.

