How This Book is Organized

In this book, each chapter addresses one or more ideas of iOS development through discussion and hands-on practice. For more coding practice, most chapters include challenge exercises. We encourage you to take on at least some of these. They are excellent for firming up the concepts introduced in the chapter and making you a more confident iOS programmer. Finally, most chapters conclude with one or two For the More Curious sections that explain certain consequences of the concepts that were introduced earlier.

Chapter 1 introduces you to iOS programming as you build and deploy a tiny application. You will get your feet wet with Xcode and the iOS simulator along with all the steps for creating projects and files. The chapter includes a discussion of Model-View-Controller and how it relates to iOS development.

Chapters 2 and 3 provide an overview of Objective-C and memory management. Although you will not create an iOS application in these two chapters, you will build and debug a tool called RandomItems to ground you in these concepts.

In Chapters 4 and 5, you will begin focusing on the iOS user interface as you learn about views and the view hierarchy and create an application called Hypnosister.

Chapters 6 and 7 introduce view controllers for managing user interfaces with the HypnoNerd application. You will get practice working with views and view controllers as well as navigating between screens using a tab bar. You will also get plenty of experience with the important design pattern of delegation as well as working with protocols, the debugger, and setting up local notifications.

Chapter 8 introduces the largest application in the book – Homepwner. (By the way, Homepwner is not a typo; you can find the definition of pwn at www.urbandictionary.com.) This application keeps a record of your possessions in case of fire or other catastrophe. Homepwner will take fourteen chapters to complete.

In Chapters 8, 9, and 19, you will build experience with tables. You will learn about table views, their view controllers, and their data sources. You will learn how to display data in a table, how to allow the user to edit the table, and how to improve the interface.

Chapter 10 builds on the navigation experience gained in Chapter 6. You will learn how to use UINavigationController and you will give Homepwner a drill-down interface and a navigation bar.

In Chapter 11, you will learn how to take pictures with the camera and how to display and store images in Homepwner. You will use NSDictionary and UIImagePickerController.

In Chapters 12 and 13, you will set Homepwner aside for a bit to create a drawing application named TouchTracker to learn about touch events. You will see how to add multi-touch capability and how to use UIGestureRecognizer to respond to particular gestures. You will also get experience with the first responder and responder chain concepts and more practice with NSDictionary.

In Chapter 14, you will learn how to use debug gauges, Instruments, and the static analyzer to optimize the performance of TouchTracker.

In Chapters 15 and 16, you will make Homepwner a universal application – an application that runs natively on both the iPhone and the iPad. You will also work with Auto Layout to build an interface that will appear correctly on any screen size.

In Chapter 17, you will learn about handling rotation and using UIPopoverController for the iPad and modal view controllers.

Chapter 18 delves into ways to save and load data. In particular, you will archive data in the Homepwner application.

In Chapter 20, you will update Homepwner to use Dynamic Type to support different font sizes that a user may prefer.

Chapter 21 takes another break from Homepwner and introduces web services as you create the Nerdfeed application. This application fetches and parses an RSS feed from a server using NSURLConnection and NSXMLParser. Nerdfeed will also display a web page in a UIWebView.

In Chapter 22, you will learn about UISplitViewController and add a split view user interface to Nerdfeed to take advantage of the iPad’s larger screen size.

Chapter 23 returns to the Homepwner application with an introduction to Core Data. You will change Homepwner to store and load its data using an NSManagedObjectContext.

In Chapter 24, you will add state restoration to Homepwner to let users return to the application right where they left off – no matter how long they are away.

Chapter 25 introduces the concepts and techniques of internationalization and localization. You will learn about NSLocale, strings tables, and NSBundle as you localize parts of Homepwner.

In Chapter 26, you will use NSUserDefaults to save user preferences in a persistent manner. This chapter will complete the Homepwner application.

Chapter 27 introduces the Core Animation framework with a brief return to the HypnoNerd application to implement animations.

Chapter 28 introduces building applications using storyboards. You will piece together an application using UIStoryboard and learn more about the pros and cons of using storyboards.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset