Acknowledgments xxiiiAbout the Author xxv Introduction 1 How This Book Is Organized 1About Versions 4About the Code 4Conventions 5 Part I: First Steps 7 Chapter 1: Getting Xcode 9 Before You Begin 9Installing Xcode 10Removing Xcode 11Apple Developer Programs 12Downloading Xcode 13Additional Downloads 14Summary 15 Chapter 2: Kicking the Tires 17 Starting Xcode 17Hello World 18Getting Rid of It 24Summary 24 Chapter 3: Simple Workflow and Passive Debugging 25 Creating the Project 25Building 29Running 31Simple Debugging 32Summary 34 Chapter 4: Active Debugging 35 A Simple Test Case 35Going Active 35Fixing the Problem 39Summary 43 Chapter 5: Compilation 45 Compiling 45Linking 50Dynamic Loading 52Xcode and Clang 53Compiler Products 58Summary 62 Chapter 6: Adding a Library Target 63 Adding a Target 63Target Membership 65A Dependent Target 68Summary 70 Chapter 7: Version Control 73 Taking Control 74The State of Your Files 76Your First Commit 78Working with Remote Repositories 79Merges and Conflicts 83The Version Editor 93Branching 96Summary 98 Part II: The Life Cycle of an iOS Application 101 Chapter 8: Starting an iOS Application 103 Planning the App 103Starting a New iOS Project 106What''s in the Project 108One More Thing 110Summary 112 Chapter 9: An iOS Application: Model 113 Implementing the Model 113Managed-Object Classes 120Making the Model Easier to Debug 131Summary 132 Chapter 10: An iOS Application: Controller 133 Renaming Symbols 133Editing the View Controller 136Live Issues and Fix-it 138The Real Passer Rating 140Summary 145 Chapter 11: Building a New View 147 The Next View Controller 147Building a View 152The Table View 161Outlets 161Testing the Billboard View 170Summary 171 Chapter 12: Autolayout in a New View 173 Why Autolayout? 173The Player Billboard, Revisited 175The Label System 179Summary 185 Chapter 13: Adding Table Cells 187 The Game Table 187The Game Table: First Run 191A Custom Table Cell 193Adding Some Graphics 196Summary 202 Chapter 14: Adding an Editor 205 The Plan 205Adding a Modal Scene 205The Editor View Controllers 210Segues 218Summary 219 Chapter 15: Unit Testing 221 The Test Navigator 222Testing the CSV Reader 224Testing and the Debugger 229Application Tests 232TestKit Assertions 233Summary 236 Chapter 16: Measurement and Analysis 237 Speed 237Memory 247Summary 253 Chapter 17: Provisioning 255 Apple Developer Programs 255Provisioning for iOS 257The Capabilities Editor 262OS X Sandboxing 264Gatekeeper and Developer ID 266Distribution Builds 269Summary 273 Part III: Xcode for Mac OS X 275 Chapter 18: Starting an OS X Application 277 The Goal 277Getting Started 278Model 281Wiring a Menu 287Summary 293 Chapter 19: Bindings: Wiring an OS X Application 295 Laying Out the Document Window 295Filling the Table-- Bindings 301Layering NSControllers 307Running a Popover with Bindings 315Running the Near-Final App 321Summary 322 Chapter 20: A Custom View for OS X 323 A Graphing View 325Back to the View Controller 328QuickLook in the Debugger 332Custom View Properties 334Summary 336 Chapter 21: Localization 337 How Localization Works 337Adding a Localization 338Localizing MainMenu.xib 347Localizing Info.plist 353Strings in Code 355Showing Mac Passer Rating in Finder 359Summary 364 Chapter 22: Bundles and Packages 365 A Simple Package: RTFD 365Bundles 367Application Bundles 367The Info.plist File 369Info.plist Keys for Applications 371Info.plist 379Summary 379 Chapter 23: Frameworks 381 Adding a Framework Target 381Installing a Framework 383Building Mac Passer Rating 387Debugging a Framework 388Summary 394 Chapter 24: Property Lists 395 Property List Data Types 395Editing Property Lists 396Other Formats 406Specialized Property Lists 407Summary 408 Part IV: Xcode Tasks 409 Chapter 25: Documentation in Xcode 411 Quick Help 411Open Quickly 413Help 414The Documentation Window 415Keeping Current 419Your Own Quick Help 421Your Own Docsets 424Summary 430 Chapter 26: The Xcode Build System 431 How Xcode Structures a Build 431Build Variables 434Settings Hierarchy 435Editing Build Variables 437Configurations 438Configuration Files 439Command-Line Tools 443Custom Build Rules 446The Build Log 448A Simple Build Transcript 450Summary 458 Chapter 27: Instruments 459 What Instruments Is 459Running Instruments 460The Instruments 474Custom Instruments 480The Templates 482Summary 484 Chapter 28: Debugging 485 Scheme Options 485Doing More with Breakpoints 488The lldb Command Line 491Tips 493Summary 497 Chapter 29: Continuous Integration 499 Xcode Server 500Bots 503Seeing the Results 507Building for Distribution 508Summary 509 Chapter 30: Snippets 511 Tricks 511Traps 522 Part V: Appendixes 525 Appendix A: Some Build Variables 527 Useful Build Variables 528Environment 528Code Signing 529Locations 530Compiler Settings 533Search Paths 535Info.plist 535The DEVELOPER Variables 536Source Trees 537 Appendix B: Resources 539 Books 539On the Net 540Face to Face 544Other Software 544 Index 555.
Xcode 5 Start to Finish : iOS and OS X Development