You are previewing Mastering Xcode: Develop and Design, Second Edition.
O'Reilly logo
Mastering Xcode: Develop and Design, Second Edition

Book Description

Xcode is the flagship application of Apple’s suite of developer tools. In this book, Xcode experts Maurice Kelly and Joshua Nozzi show you how to use Apple’s powerful developer tools to start writing iOS and OS X apps. You’ll learn what Xcode can do and gain a deep understanding of how Xcode works so you can create and maintain great apps of your own.

After a tour of the Xcode tools suite, you’ll jump in by creating a basic Cocoa app and exploring the Xcode interface. You’ll learn how to manage your project, write and debug code, build user interfaces, and use version control. You’ll also learn to customize the build process, write and run unit tests, profile your code, and deploy your apps.

This book includes:

  • Detailed instruction, ample illustrations, and clear examples

  • Real-world guidance and advice

  • Insight into best practices from two Xcode experts

  • Emphasis on using Xcode’s streamlined interface for UI design, coding, testing, and debugging

Table of Contents

  1. Title Page
  2. Copyright Page
  3. Dedication Page
  4. Maurice Kelly
    1. About the Author
    2. Acknowledgments
  5. Joshua Nozzi
    1. About the Author
    2. Acknowledgments
  6. Contents
  7. Introduction
    1. A Moving Target
    2. What You Will Learn
  8. Welcome to Xcode
    1. Interface Builder
    2. Clang Static Analyzer
    3. Instruments
    4. Source Code Management
  9. Part I: Getting Started
    1. Chapter 1. Installing Xcode
      1. Downloading
      2. Getting With the Program
      3. Even More Stuff
      4. Wrapping Up
    2. Chapter 2. Exploring the Environment
      1. You Get One Window
      2. Creating a Project
      3. The Workspace Window
      4. The Navigator Area
      5. The Jump Bar
      6. The Editor Area
      7. The Utility Area
      8. The Debug Area
      9. The Activity Viewer
      10. Tabbed Coding
      11. The Organizer Window
      12. Wrapping Up
    3. Chapter 3. Getting Help
      1. The Help Menu
      2. The Organizer’s Documentation Tab
      3. The Source Editor
      4. Community Help and Feedback
      5. Wrapping Up
  10. Part II: Building Applications
    1. Chapter 4. Setting Up Your Workspace
      1. Workspaces Defined
      2. When to Use a Workspace
      3. Creating the Lighting Suite Workspace
      4. Wrapping Up
    2. Chapter 5. Adding Resources and Code
      1. Working with Files
      2. Adding Files to Lamp
      3. Working with the Source Editor
      4. Wrapping Up
    3. Chapter 6. Version Control with Xcode Snapshots
      1. Xcode Snapshots
      2. Wrapping Up
    4. Chapter 7. Building User Interfaces
      1. Understanding Nibs
      2. Getting Familiar with Interface Builder
      3. Adding User Interface Elements
      4. Storyboards
      5. Wrapping Up
    5. Chapter 8. Creating Core Data Models
      1. Introducing Core Data
      2. Using the Data Model Editor
      3. Creating a Basic Data Model for Lamp
      4. Wrapping Up
    6. Chapter 9. Debugging Your Applications
      1. Interactive Debugging
      2. Debugging Flashlight
      3. Static Analysis
      4. Wrapping Up
    7. Chapter 10. Deploying
      1. Archiving
      2. Validating Your Application
      3. Distribution Channels
      4. Alternatives to Archiving
      5. Wrapping Up
  11. Part III: Further Exploration
    1. Chapter 11. Using Older Projects in Xcode 4
      1. Project Modernization Methods
      2. Code Modernization Methods
      3. Wrapping Up
    2. Chapter 12. Advanced Editing
      1. Renaming Symbols
      2. Refactoring
      3. Organizing with Macros
      4. Changing Editor Key Bindings
      5. Adjusting Project Settings
      6. Using the Search Navigator
      7. Searching Within Files
      8. Wrapping Up
    3. Chapter 13. The Build System
      1. An Overview
      2. Working with Targets
      3. Working with Schemes
      4. Entitlements and Sandboxing
      5. Wrapping Up
    4. Chapter 14. Working with Frameworks
      1. What Are Libraries, Frameworks, and Bundles?
      2. Using Existing Libraries and Frameworks
      3. Creating a Framework
      4. Wrapping Up
    5. Chapter 15. Improving Code Quality
      1. Debugging
      2. Instruments
      3. Unit Testing
      4. Wrapping Up
    6. Chapter 16. Scripting and Preprocessing
      1. Extending Your Workflow with Custom Scripts
      2. Examining a Simple Scripting Example
      3. Using the Preprocessor
      4. Wrapping Up
    7. Chapter 17. Xcode’s Command Line Interface
      1. The Command Line Tools
      2. Building from the Command Line
      3. Using Multiple Versions of Xcode
      4. Accessing the Command Line Tools
      5. Wrapping Up
    8. Chapter 18. Version Control with an SCM System
      1. Working with Git and Subversion
      2. Working with Hosted Git Services
      3. Wrapping Up
  12. Appendix A. Managing Your iOS Devices
    1. Using the Organizer’s Devices Tab
    2. Installing iOS on a Device
    3. Managing Device Screenshots
    4. Managing Apps and Data
    5. Reviewing Logs
  13. Appendix B. Documentation Updates
    1. Setting Documentation Preferences
  14. Appendix C. Other Resources
    1. The Book Site
    2. Apple Resources
    3. Third-Party Resources
  15. Index