You’re previewing Ry’s Cocoa Tutorial

Introduction to Mac Apps

Mac Apps are applications built for the OS X operating system. They’re similar to iOS Apps, but instead of iPhones, they run on MacBooks and iMacs. Virtually every experience the user has on these devices is facilitated by some kind of Mac App.

OS X ships with many built-in apps like iPhoto and GarageBand, but users can also purchase new ones from 3rd-party developers through the Mac App Store. This is accessible via the App Store program that comes with OS X.

A section of the Mac App Store

Apple makes it easy for developers to create their own Mac Apps by maintaining the Cocoa frameworks. Cocoa provides well-defined patterns for organizing an application, as well as a ton of built-in functionality for managing data, creating user interfaces, and implementing common behaviors like undo/redo.

This tutorial is a comprehensive introduction to Mac App development. Each chapter uses a single running example to demonstrate a core feature of Cocoa. If you follow each example project thoroughly, you should have all the skills you need to start developing your own Mac Apps by the end of this book.

The UI Component Reference included at the end of the tutorial also provides a friendly introduction to built-in user interface components like buttons, text fields, and tables. It’s precisely this sort of reusable functionality that makes Cocoa such a powerful tool, and understanding how to harness it will save you from spending hundreds of hours re-inventing the wheel.

This tutorial assumes a solid foundation in the Objective-C programming language, which you can acquire from the free companion guide, Ry’s Objective-C Tutorial. No other programming experience is required.

Sorry, this is the end of the preview. To read the rest of this chapter, you’ll need to purchase Ry’s Cocoa Tutorial.

Mailing List

Sign up for my low-volume mailing list to find out when new content is released. Next up is a comprehensive Swift tutorial planned for late January.

You’ll only receive emails when new tutorials are released, and your contact information will never be shared with third parties. Click here to unsubscribe.