You are previewing Beginning iOS Game Development.

Beginning iOS Game Development

Cover of Beginning iOS Game Development by Patrick Alessi Published by Wrox
  1. Cover
  2. Introduction
  3. Part I: The Tools to Get Started
    1. Chapter 1: Games on iOS
      1. What Makes a Good iOS Game?
      2. Developing Your Idea
      3. Game-Related Frameworks
      4. Summary
    2. Chapter 2: The Xcode Programming Environment
      1. The Coding Environment
      2. Xcode Debugging Tools
      3. Building a Simple Interface
      4. Summary
      5. Exercises
    3. Chapter 3: The C Programming Language
      1. Introducing C
      2. Variables and Expressions
      3. Loops
      4. Execution Flow and Decisions
      5. Breaking Up Code with Functions
      6. Pointers
      7. A Game Example
      8. Summary
      9. Exercises
    4. Chapter 4: The Objective-C Programming Language
      1. Classes and Objects
      2. Inheritance
      3. Building a Game in Objective-C
      4. Summary
      5. Exercises
    5. Chapter 5: The Cocoa Foundation Framework
      1. Model-View-Controller Architecture
      2. Your First iOS Game
      3. Building the UI
      4. Outlets and Actions
      5. Handling Text with NSString
      6. Collecting Objects with NSArray
      7. Building the Game Model
      8. Periodic Events and Timers
      9. Summary
      10. Exercises
  4. Part II: Game Building Blocks
    1. Chapter 6: Drawing with UIKit and Core Graphics
      1. Introducing the Drawing Frameworks
      2. The Drawing Environment
      3. Advanced Drawing with Core Graphics
      4. Starting the Blocker game with the BlockView
      5. Working with Images
      6. Animation and Timing with CADisplayLink
      7. Finishing the Blocker Game
      8. Summary
      9. Exercises
    2. Chapter 7: Responding to User Interaction
      1. Events in iOS
      2. Building a Simple Touch-Based Game: Simon Says
      3. Responding to Motion with the Accelerometer
      4. Recognizing Gestures
      5. Summary
      6. Exercises
    3. Chapter 8: Animating Your Graphics
      1. Animating Images with UIImageView
      2. Introducing Core Animation
      3. A Brief Introduction to Blocks
      4. Animating UIView Properties and Transitions
      5. Core Animation Basics
      6. Summary
      7. Exercises
    4. Chapter 9: Making Noise with iOS Audio APIs
      1. Playing Simple Sounds with the System Sound Services
      2. Playing Sounds with the AV Foundation Framework
      3. Media Player Framework
      4. Summary
      5. Exercises
    5. Chapter 10: Building a Networked Game with GameKit
      1. Introducing GameKit
      2. Starting Out
      3. Networking Your Game
      4. NSData and NSCoding
      5. Converting Classes to Data with Archives
      6. Connecting and Sending Data
      7. Running the Game
      8. Summary
      9. Exercises
  5. Appendix
    1. Chapter 2
    2. Chapter 3
    3. Chapter 4
    4. Chapter 5
    5. Chapter 6
    6. Chapter 7
    7. Chapter 8
    8. Chapter 9
    9. Chapter 10
O'Reilly logo

Chapter 5

The Cocoa Foundation Framework

What You Will Learn In This Chapter:

  • Building the interface for an iOS game by using Interface Builder
  • Designing an iOS game by using the Model-View-Controller architecture
  • Handling text with NSString
  • Working with mutable and immutable types
  • Using collections to store data
  • Calling periodic methods with NSTimer

In the previous two chapters, you learned about the languages that you use to build games for iOS. You may remember using the #import statement in the programs in the last chapter to include classes from the Cocoa Foundation framework like NSString. In this chapter, you will take a closer look at some of the important classes that make up the Foundation framework. You will also begin developing games for iOS, leaving command-line games behind.

The Foundation framework provides many low-level classes that you will use in every iOS program, hence the name Foundation. Foundation includes object-oriented versions of base types like strings and dates, collections like arrays, dictionaries, and sets, along with utility classes for working with I/O, URLs, and timers. Foundation also includes the root class NSObject that you used to create your own classes in the last chapter.

Model-View-Controller Architecture

Before I move on with the sample, it is important that you understand the basic architecture used to build most iPhone applications: Model-View-Controller. There are three parts to the architecture, shown in Figure 5.1. As you can ...

The best content for your career. Discover unlimited learning on demand for around $1/day.