Tabla de Contenidos:
  • Machine generated contents note: pt. I Language
  • 1. Just Enough C
  • Compilation, Statements, and Comments
  • Variable Declaration, Initialization, and Data Types
  • Structs
  • Pointers
  • Arrays
  • Operators
  • Flow Control and Conditions
  • Functions
  • Pointer Parameters and the Address Operator
  • Files
  • The Standard Library
  • More Preprocessor Directives
  • Data Type Qualifiers
  • 2. Object-Based Programming
  • Objects
  • Messages and Methods
  • Classes and Instances
  • Class Methods
  • Instance Variables
  • The Object-Based Philosophy
  • 3. Objective-C Objects and Messages
  • An Object Reference Is a Pointer
  • Instance References, Initialization, and nil
  • Instance References and Assignment
  • Instance References and Memory Management
  • Methods and Messages
  • Calling a Method
  • Declaring a Method
  • Nesting Method Calls
  • No Overloading
  • Parameter Lists
  • When Message Sending Goes Wrong
  • Messages to nil
  • Unrecognized Selectors
  • Typecasting and the id Type
  • Messages as Data Type
  • C Functions
  • CFTypeRefs
  • Blocks
  • 4. Objective-C Classes
  • Subclass and Superclass
  • Interface and Implementation
  • Header File and Implementation File
  • Class Methods
  • The Secret Life of Classes
  • 5. Objective-C Instances
  • How Instances Are Created
  • Ready-Made Instances
  • Instantiation from Scratch
  • Nib-Based Instantiation
  • Polymorphism
  • The Keyword self
  • The Keyword super
  • Instance Variables and Accessors
  • Key
  • Value Coding
  • Properties
  • How to Write an Initializer
  • Referring to Instances
  • pt. II IDE
  • 6. Anatomy of an Xcode Project
  • New Project
  • The Project Window
  • The Navigator Pane
  • The Utilities Pane
  • The Editor
  • The Project File and Its Dependents
  • The Target
  • Build Phases
  • Build Settings
  • Configurations
  • Schemes and Destinations
  • Renaming Parts of a Project
  • From Project to Running App
  • Build Settings
  • Property List Settings
  • Nib Files
  • Additional Resources
  • Code and the App Launch Process
  • Frameworks and SDKs
  • 7. Nib Management
  • A Tour of the Nib Editor Interface
  • The Document Outline
  • Canvas
  • Inspectors and Libraries
  • Nib Loading
  • Outlets and the Nib Owner
  • Creating an Outlet
  • Misconfiguring an Outlet
  • Deleting an Outlet
  • More Ways to Create Outlets
  • Outlet Collections
  • Action Connections
  • Additional Initialization of Nib-Based Instances
  • 8. Documentation
  • The Documentation Window
  • Class Documentation Pages
  • Sample Code
  • Other Resources
  • Quick Help
  • Symbols
  • Header Files
  • Internet Resources
  • 9. Life Cycle of a Project
  • Device Architecture and Conditional Code
  • Version Control
  • Editing Your Code
  • Autocompletion
  • Snippets
  • Fix-it and Live Syntax Checking
  • Navigating Your Code
  • Running in the Simulator
  • Debugging
  • Caveman Debugging
  • The Xcode Debugger
  • Unit Testing
  • Static Analyzer
  • Clean
  • Running on a Device
  • Obtaining a Certificate
  • Obtaining a Development Provisioning Profile
  • Running the App
  • Profile and Device Management
  • Gauges and Instruments
  • Localization
  • Archiving and Distribution
  • Ad Hoc Distribution
  • Final App Preparations
  • Icons in the App
  • Other Icons
  • Launch Images
  • Screenshots
  • Property List Settings
  • Submission to the App Store
  • pt. III Cocoa
  • 10. Cocoa Classes
  • Subclassing
  • Categories
  • Splitting a Class
  • Class Extensions
  • Protocols
  • Informal Protocols
  • Optional Methods
  • Some Foundation Classes
  • Useful Structs and Constants
  • NSString and Friends
  • NSDate and Friends
  • NSNumber
  • NSValue
  • NSData
  • Equality and Comparison
  • NSIndexSet
  • NSArray and NSMutableArray
  • NSSet and Friends
  • NSDictionary and NSMutableDictionary
  • NSNull
  • Immutable and Mutable
  • Property Lists
  • The Secret Life of NSObject
  • 11. Cocoa Events
  • Reasons for Events
  • Subclassing
  • Notifications
  • Receiving a Notification
  • Unregistering
  • Posting a Notification
  • NSTimer
  • Delegation
  • Cocoa Delegation
  • Implementing Delegation
  • Data Sources
  • Actions
  • The Responder Chain
  • Deferring Responsibility
  • Nil-Targeted Actions
  • Swamped by Events
  • Delayed Performance
  • 12. Accessors and Memory Management
  • Accessors
  • Key-Value Coding
  • KVC and Outlets
  • Key Paths
  • Array Accessors
  • Memory Management
  • Principles of Cocoa Memory Management
  • The Rules of Cocoa Manual Memory Management
  • What ARC Is and What It Does
  • How Cocoa Objects Manage Memory
  • Autorelease
  • Memory Management of Instance Variables (Non-ARC)
  • Memory Management of Instance Variables (ARC)
  • Retain Cycles and Weak References
  • Unusual Memory Management Situations
  • Nib Loading and Memory Management
  • Memory Management of Global Variables
  • Memory Management of CFTypeRefs
  • Memory Management of Pointer-to-Void Context Info
  • Properties
  • Property Memory Management Policies
  • Property Declaration Syntax
  • Property Accessor Synthesis
  • Dynamic Accessors
  • 13.Communication Between Objects
  • Visibility by Instantiation
  • Visibility by Relationship
  • Global Visibility
  • Notifications
  • Key-Value Observing
  • Model-View-Controller.