Contents

Introduction

Describes object-oriented programming from the perspective of an Objective-C developer.

Who Should Read This Document

For those who have never used object-oriented programming to create applications, this document is designed to help you become familiar with object-oriented development. It spells out some of the implications of object-oriented design and gives you a flavor of what writing an object-oriented program is really like.

If you have developed applications using an object-oriented environment, this document will help you understand the fundamental concepts that are essential to understanding how to use Objective-C effectively and how to structure a program that uses Objective-C.

Because this isn’t a document about C, it assumes some prior acquaintance with that language. However, it doesn’t have to be an extensive acquaintance. Object-oriented programming in Objective-C is sufficiently different from procedural programming in ANSI C that you won’t be hampered if you’re not an experienced C programmer.

Organization of This Document

This document is divided into several chapters:

Why Objective-C? explains why Objective-C was chosen as the development language for the Cocoa frameworks.

Object-Oriented Programming discusses the rationale for object-oriented programming languages and introduces much of the terminology. It develops the ideas behind object-oriented programming techniques. Even if you’re already familiar with object-oriented programming, you are encouraged to read this chapter to gain a sense of the Objective-C perspective on object orientation and its use of terminology.

The Object Model describes how you can think of a program in terms of units that combine state and behavior—objects. It then explains how you characterize these objects as belonging to a particular class, how one class can inherit state and behavior from another class, and how objects can send messages to other objects.

Structuring Programs explains how you think about designing an object-oriented program by creating connections between objects. It introduces the techniques of aggregation and decomposition, which divide responsibility between different sorts of object, and the role of frameworks in defining libraries of objects designed to work together.

Structuring the Programming Task discusses issues of project management related to collaboration among programmers and to code implementation.

See Also

Programming with Objective-C describes the Objective-C programming language.

Objective-C Runtime Programming Guide describes how you can interact with the Objective-C runtime.

Objective-C Runtime Reference describes the data structures and functions of the Objective-C runtime support library. Your programs can use these interfaces to interact with the Objective-C runtime system. For example, you can add classes or methods, or obtain a list of all class definitions for loaded classes.

Next

Copyright © 2010 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2010-11-15