Swift Development with Cocoa

 Developing for the Mac and iOS App Stores

Developing for the Mac and iOS App Stores
Publisher: O’Reilly Media
Final Release Date: December 2014
Pages: 474

Full Description

Ready to build apps for iPhone, iPad, and Mac now that Swift has landed? If you’re an experienced programmer who’s never touched Apple developer tools, this hands-on book shows you how to use the Swift language to make incredible iOS and OS X apps, using Cocoa and Cocoa Touch.

Learn how to use Swift in a wide range of real-world situations, with Cocoa features such as Event Kit and Core Animation. You’ll pick up Swift language features and syntax along the way, and understand why using Swift (instead of Objective-C) makes iOS and Mac app development easier, faster, and safer. You’ll also work with several exercises to help you practice as you learn.

  • Learn the OS X and iOS application lifecycle
  • Use storyboards to design adaptive interfaces
  • Explore graphics systems, including the built-in 2D and 3D game frameworks
  • Display video and audio with AVFoundation
  • Store data locally with the file system, or on the network with iCloud
  • Display lists or collections of data with table views and collection views
  • Build apps that let users create, edit, and work with documents
  • Use MapKit, Core Location, and Core Motion to interact with the world

Table of Contents

  1. Chapter 1 Cocoa Development Tools
    • The Mac and iOS Developer Programs
    • Creating Your First Project with Xcode
    • Developing a Simple Swift Application
    • Using the iOS Simulator
    • Testing iOS Apps with TestFlight
  2. Chapter 2 Programming with Swift
    • The Swift Programming Language
    • Playgrounds
    • Variables and Constants
    • Types
    • Control Flow
    • Functions and Closures
    • Objects
    • Interoperating with Objective-C
    • Using Objective-C and Swift in the Same Project
    • Modules
    • Memory Management
    • Working with Strings
    • Data
    • Design Patterns in Cocoa
  3. Chapter 3 Applications on OS X and iOS
    • What Is an Application?
    • The Application Life Cycle
    • The Application Sandbox
    • Notifications with NSNotification
  4. Chapter 4 Graphical User Interfaces
    • Interfaces in OS X and iOS
    • MVC and Application Design
    • Nib Files and Storyboards
    • Constructing an Interface
    • Building an App with Nibs and Constraints
    • Interfaces on iOS
    • UI Dynamics
    • Core Animation
  5. Chapter 5 Closures and Operation Queues
    • Closures in Cocoa
    • Concurrency with Operation Queues
    • Operation Queues and NSOperation
    • Performing Work on Operation Queues
    • Putting It All Together
  6. Chapter 6 Drawing Graphics in Views
    • How Drawing Works
    • The Pixel Grid
    • Drawing in Views
    • Building a Custom View
  7. Chapter 7 SpriteKit
    • SpriteKit’s Architecture
    • Making an App That Uses SpriteKit
    • Working with SpriteKit Scenes
    • SpriteKit Nodes
    • Putting Sprites in Scenes
    • Responding to Touches
    • Working with Textures
    • Texture Atlases
    • Working with Text
    • Animating Content with Actions
    • Using Shape Nodes
    • Using Image Effect Nodes
    • Adding Physics to SpriteKit Objects
    • Adding Joints to SpriteKit Objects
    • Lighting SpriteKit Scenes
    • Constraints
    • Using Shaders in SpriteKit
    • Using SpriteKit Editor
  8. Chapter 8 SceneKit
    • SceneKit Structure
    • Working with SceneKit
    • Adding a SceneKit View
    • Adding a Scene
    • Adding a Camera
    • Adding a 3D Object
    • Adding Lights
    • Animating Content in the Scene
    • Creating Text Geometry
    • Working with Materials
    • Hit Testing
    • Constraints
    • Loading Data from COLLADA Files
    • Adding Physics to the Scene
  9. Chapter 9 Audio and Video
    • AV Foundation
    • Playing Video with AVPlayer
    • Speech Synthesis
    • Working with the Photo Library
  10. Chapter 10 iCloud and Data Storage
    • Preferences
    • Working with the Filesystem
    • Working with the Sandbox
    • iCloud
    • What iCloud Stores
    • Setting Up for iCloud
    • Testing Whether iCloud Works
    • Storing Settings
    • iCloud Storage
    • Document Pickers
    • Using iCloud Well
  11. Chapter 11 Cocoa Bindings
    • Binding Views to Models
    • A Simple Bindings App
    • Binding to Controllers
    • Array and Object Controllers
    • A More Complex Bindings App
  12. Chapter 12 Table Views and Collection Views
    • Data Sources and Delegates
    • Table Views
    • Collection Views
  13. Chapter 13 Document-Based Applications
    • The NSDocument and UIDocument Classes
    • Document Objects in MVC
    • Document-Based Applications on OS X
    • Document-Based Applications on iOS
  14. Chapter 14 Networking
    • Connections
    • Building a Networked Application
    • Bonjour Service Discovery
    • Multipeer Connectivity
  15. Chapter 15 Working with the Real World
    • Working with Location
    • Geocoding
    • Region Monitoring and iBeacons
    • Locations and Privacy
    • Maps
    • Device Motion
    • Printing Documents
    • Game Controllers
    • App Nap
    • Authenticating Using Touch ID
    • Handoff
  16. Chapter 16 EventKit
    • Understanding Events
    • Accessing the Event Store
    • Accessing Calendars
    • Accessing Events
    • Working with Events
    • Building an Events Application
    • User Privacy
  17. Chapter 17 Instruments and the Debugger
    • Getting Started with Instruments
    • Fixing Problems Using Instruments
    • Retain Cycles and Leaks
    • Using the Debugger
    • View Debugging
    • The Testing Framework
    • Debug Gauges
    • Performance Optimization
  18. Chapter 18 Sharing and Notifications
    • Sharing
    • Sharing on iOS
    • Sharing on OS X
    • Notifications
    • Sending Push Notifications
    • Setting Up to Receive Push Notifications
    • Receiving Push Notifications
    • Local Notifications
  19. Chapter 19 Nonstandard Apps
    • Command-Line Tools
    • Preference Panes
    • Status Bar Items
    • iOS Apps with Multiple Windows
  20. Chapter 20 Working with Text
    • Internationalization and Localization
    • Formatting Data with NSFormatter
    • Formatting Numbers, Lengths, Mass, Energy, and Data
    • Detecting Data with NSDataDetector
    • TextKit
Related Content

Book Sampler


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s