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

Chapter 4

The Objective-C Programming Language

What You Will Learn In This Chapter:

  • Understanding the relationship between C and Objective-C
  • Learning basic object-oriented concepts like classes, objects, methods, and messages
  • Building classes in Objective-C
  • Managing memory

Objective-C is a superset of C. Everything that you can do in C, you can also do in Objective-C. The majority of features that Objective-C adds to C enable you to build your programs by using object-oriented (OO) programming techniques. In the last chapter, you learned that C is a structured programming language. Structured languages run in a top down manner and encourage a step-by-step, function-based approach to solving problems.

On the other hand, object-oriented languages encourage a more abstract approach, as you will learn in this chapter. In an object-oriented language like Objective-C, you model your software as a group of objects. Instead of writing functions that do a particular operation, you encapsulate your program logic into these objects. The objects have functions, or methods, that operate on the data contained in the objects. The objects can also contain their own data. Often, you will model the objects in your programs based on real-world objects. This can make object-oriented programs easier to understand. Object-oriented programs can also be easier to debug and modify because you encapsulate all of the functionality and data related to an object in the object itself.

Classes and Objects ...

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