Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
iOS 7 Programming Fundamentals
Preface
Versions
Acknowledgments
From the Programming iOS 4 Preface
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
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
Initialization
The designated initializer
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
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
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
Index
About the Author
Colophon
Copyright
← Prev
Back
Next →
← Prev
Back
Next →