1 option
Learning Objective-C 2.0 : a hands-on guide to Objective-C for Mac and iOS developers
- Format:
- Book
- Author/Creator:
- Clair, Bob, Author.
- Language:
- English
- Subjects (All):
- iOS (Electronic resource).
- Objective-C (Computer program language)--Programming.
- Objective-C (Computer program language).
- Object-oriented programming (Computer science).
- Macintosh (Computer).
- Physical Description:
- 1 online resource (xxx, 372 p.) : ill.
- Edition:
- 1st edition
- Place of Publication:
- [Place of publication not identified] Addison Wesley 2011
- Language Note:
- English
- System Details:
- text file
- Summary:
- Get Started Fast with Objective-C 2.0 Programming for OS X, iPhone, iPod touch, and iPad If you want to learn Objective-C 2.0 to write programs for Mac OS X, iPhone, iPad, or iPod touch, you’ve come to the right place! Concise, readable, and friendly, Learning Objective-C 2.0 is the perfect beginner’s guide to the latest version of Objective-C. Longtime Mac OS X and iPhone developer Robert Clair covers everything from the absolute basics to Objective-C 2.0’s newest innovations. Clair begins with a practical refresher on C and object-oriented programming and walks you through creating your first Objective-C program with Xcode. Next, you’ll master each core language feature, from objects and classes to messaging, frameworks, and protocols. Every concept is illustrated with simple examples, and many chapters contain hands-on practice exercises. Throughout, Learning Objective-C 2.0 focuses on the features, concepts, and techniques that matter most day to day. The result is an outstanding first book for everyone who wants to begin programming for iPhone, iPod touch, iPad, or Mac OS X. COVERAGE INCLUDES Understanding methods, messages, and the Objective-C messaging system Defining classes, creating object instances, and using class objects Using categories to extend classes without subclassing Simplifying development with Objective-C 2.0 declared properties Using protocols to emphasize behavior rather than class Working with common Foundation classes for strings, arrays, dictionaries, sets, and number objects Using Objective-C control structures, including Objective-C 2.0’s new fast enumeration construct Understanding application security and hiding the declaration of methods that should stay private Using the new blocks feature provided in Objective-C 2.0
- Contents:
- Cover
- Contents
- Preface
- Acknowledgments
- About the Author
- I: Introduction to Objective-C
- 1 C, The Foundation of Objective-C
- The Structure of a C Program
- Variables
- Operators
- Expressions and Statements
- Program Flow
- Preprocessor
- printf
- Using gcc and gdb
- Summary
- Exercises
- 2 More About C Variables
- Memory Layout of an Objective-C Program
- Automatic Variables
- External Variables
- Declaration Keywords
- Scope
- Dynamic Allocation
- 3 An Introduction to Object-Oriented Programming
- Object-Oriented Programming
- An Introduction to Objective-C
- Objective-C Additions
- 4 Your First Objective-C Program
- Building with Xcode
- Objective-C Program Structure
- An Object-Oriented Hello World
- HelloObjectiveC.m
- II: Language Basics
- 5 Messaging
- Methods
- Messaging
- Messaging Details
- Under the Hood
- Message Forwarding
- Efficiency
- Introspection and Other Runtime Fun
- 6 Classes and Objects
- Defining a Class
- Subclassing a Class
- Creating Objects
- Destroying Objects
- Copying Objects
- 7 The Class Object
- Class Objects
- Other Class Methods
- Mimicking Class Variables
- 8 Frameworks
- What Is a Framework?
- Cocoa Frameworks
- AppKit
- Core Foundation
- Core Graphics
- Core Animation
- Other Apple-Supplied Frameworks
- Third-Party Frameworks
- 9 Common Foundation Classes
- Immutable and Mutable Classes
- Class Clusters
- NSString
- Collection Classes
- NSNumber
- NSNull
- NSData
- NSURL
- Structures
- 10 Control Structures in Objective-C
- if Statements
- for Statements and Implicit Loops
- while Statements and NSEnumerator
- Fast Enumeration.
- An Example Using Fast Enumeration
- Exceptions
- 11 Categories, Extensions, and Security
- Categories
- Extensions
- Instance Variable Scope (Access Control)
- Access Control for Methods
- Namespaces
- Security
- Calling C Functions from Objective-C
- 12 Properties
- Accessing Instance Variables Outside of an Object (Don't Do It)
- Declaring and Implementing Accessors
- Accessors Using Properties
- The @property Statement
- More About @dynamic
- Properties and Memory Management
- Subclassing and Properties
- Hidden Setters for readonly Properties
- Properties as Documentation
- Dot Syntax
- 13 Protocols
- Protocols
- Using Protocols
- TablePrinter Example
- Protocol Objects and Testing for Conformance
- Informal Protocols
- III: Advanced Concepts
- 14 Reference Counting
- The Problem
- Reference Counting
- Receiving Objects
- Ownership
- dealloc
- Returning Objects
- retainCount
- Multithreading
- When Retain Counts Go Bad
- Retain Cycles
- The Final Goodbye: When Programs Terminate
- 15 Garbage Collection
- Garbage Collection: The Theory
- Garbage Collection: The Practice
- Using Garbage Collection
- Finalizers
- malloc and Garbage Collection
- Core Foundation Objects and Garbage Collection
- Some Bumps in the Road
- Garbage Collection Pro and Con
- 16 Blocks
- Function Pointers
- The Trouble with Function Pointers
- NSInvocation
- Blocks
- Some Philosophical Reservations
- IV: Appendices
- A: Reserved Words and Compiler Directives
- B: Toll-Free Bridged Classes
- C: 32- and 64-Bit
- Kernel and User Programs in 64-Bit
- Coding Differences for 64-Bit Programs
- Performance
- Compiling for 64-Bit
- More Information.
- D: Runtimes, Old and New
- Synthesized Instance Variables
- The Fragile Base Class Problem-Solved
- E: Resources for Objective-C
- Apple Resources
- Internet Resources
- Groups
- Books
- Index.
- Notes:
- Bibliographic Level Mode of Issuance: Monograph
- Includes bibliographical references and index.
- Description based on publisher supplied metadata and other sources.
- ISBN:
- 9786612691966
- 9781282691964
- 1282691961
- 9780321711458
- 0321711459
- OCLC:
- 1027171584
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.