Learning Cocoa

Video description

Learn how use Cocoa with Objective-C to develop applications on the iOS and OS X platforms. If you don’t have experience with Apple’s developer tools, no problem! From object-oriented programming to networking with Bluetooth, this video course covers all of the essentials you need to build apps for the iPhone, iPad, and Mac.

You’ll learn how to work with the Xcode IDE, Objective-C’s Foundation library, and other developer tools such as the Event Kit and Core Animation frameworks. Along the way, you will build several example projects, including “hello world” applications, a simple video player app, and an app that displays calendar events. Finally, you’ll learn how to program using Swift, Apple's new programming language for iOS and Mac development.

  • Learn the application lifecycle on OS X and iOS
  • Work with user interfaces, using nibs, storyboards, UI Dynamics, and Core Animation
  • Use AVFoundation to play audio and video
  • Work with documents and data on the file system
  • Learn how to create localized apps for users in different languages
  • Display lists and grids with table views and collection views
  • Dive into maps, location, and geocoding
  • Learn about non-standard apps, including status bar items
  • Explore networked apps, service discovery with Bonjour, and multi-peer connectivity

Table of contents

  1. Development Tools
    1. The developer programs, Xcode, and a simple app
    2. The iOS simulator
  2. Objective-C Intro
    1. Object-oriented Programming
    2. NSObjects
  3. Foundation
    1. Objects, Strings
    2. Arrays
    3. Dictionaries
    4. NSValue and NSNumber
    5. Working with Data
    6. Design Patterns
  4. Blocks and Operation Queues
    1. Blocks, Block Syntax, Methods with Blocks, Memory, Local variables inside Blocks
    2. Concurrency with Queues, Putting Blocks in Queues
  5. Apps
    1. Apps Overview
    2. Lifecycle on iOS and Mac OS X
    3. Delegates
    4. Adding Files to a Project/Working with a Project
  6. GUIs
    1. Interfaces on OS X and iOS, MVC, and Nibs
    2. Structure of Nibs, Storyboards
    3. Images, Views, subviews, IB library (iPad and iPhone discussed but not shown?)
    4. Outlets and Actions + Building a UI
    5. Constraints and Guidelines
    6. UI Dynamics
    7. Core Animation Overview
  7. Audio and Video
    1. AVFoundation and Video
    2. AVFoundation and Audio
    3. Speech Synthesis
    4. Photos
  8. Model Objects and Data Storage
    1. Key-Value Coding and Key-Value Observing
    2. NSNotification
    3. Preferences
    4. Filesystem and the Sandbox
  9. Cocoa Bindings
    1. Binding Views to Models
    2. Binding to Controllers
    3. Using Bindings in an App
  10. Table Views and Collection Views
    1. Data Sources and Delegates
    2. UITableView (iOS)
    3. NSTableView (OS X)
    4. Collection Views
  11. Document-based Apps and CLI Apps
    1. NSDocument and UIDocument
    2. CLI Apps
  12. Networking
    1. Connections + Building Networked Apps
    2. Service Discovery with Bonjour
    3. Multipeer Connectivity
  13. Working with the Real World
    1. Location
    2. Geocoding
    3. Maps
    4. Device Motion
    5. App Nap
  14. Fixing Problems
    1. Overview of Instruments Memory
    2. Instruments and Debugger in use
  15. Working with Text
    1. Localization
    2. NSFormatter
    3. NSDataDetector
    4. Dynamic Text
  16. Swift
    1. The Swift Language

Product information

  • Title: Learning Cocoa
  • Author(s):
  • Release date: September 2014
  • Publisher(s): O'Reilly Media, Inc.
  • ISBN: 9781491911877