Skip to Content
iOS 13 Programming Fundamentals with Swift
book

iOS 13 Programming Fundamentals with Swift

by Matt Neuburg
October 2019
Intermediate to advanced
677 pages
18h 28m
English
O'Reilly Media, Inc.
Content preview from iOS 13 Programming Fundamentals with Swift

Chapter 10. Cocoa Classes

When you program iOS through Foundation and UIKit, you’re programming Cocoa. The Cocoa API is written mostly in Objective-C, and Cocoa itself consists mostly of Objective-C classes, derived from the root class, NSObject.

This chapter introduces Cocoa’s class structure and explains how Cocoa is conceptually organized, in terms of its underlying Objective-C features, along with a survey of some of the most commonly encountered Cocoa utility classes. The chapter then discusses Objective-C instance properties and Cocoa key–value coding, and concludes with a description of the Cocoa root class and its features, which are inherited by all Cocoa classes.

Subclassing

Cocoa supplies a large repertory of objects that already know how to behave in certain desirable ways. A UIButton knows how to draw itself and how to respond when the user taps it; a UITextField knows how to display editable text, how to summon the keyboard, and how to accept keyboard input. When the default behavior or appearance of an object supplied by Cocoa isn’t quite what you’re after, you’ll want to customize it.

But that does not necessarily mean you need to subclass! In fact, subclassing is one of the rarer ways in which your code will relate to Cocoa. Most built-in Cocoa Touch classes will never need subclassing (and some, in their documentation, downright forbid it).

Instead, Cocoa classes are often heavily endowed with methods that you can call and properties that you can set precisely ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

iOS 12 Programming Fundamentals with Swift

iOS 12 Programming Fundamentals with Swift

Matt Neuburg

Publisher Resources

ISBN: 9781492074526Errata Page