O'Reilly logo

Programming iOS 5, 2nd Edition by Matt Neuburg

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 12. Accessors and Memory Management

Even when you’ve understood how to slot in your code so as to get the messages that you want from Cocoa (Chapter 11), your obligations to Cocoa and your interactions with the framework are not over. You have additional responsibilities that emerge as you write the code for any class that will be instantiated. There are guidelines for how a well-behaved instance should be structured and how it should act — in fact, I seriously thought of calling this chapter “The Well-Behaved Instance.” If you don’t follow those guidelines, things can go wrong: outlets aren’t set, the wrong methods are called, memory gets used up, your app crashes. This chapter is about those guidelines.

Accessors

An accessor is a method for getting or setting the value of an instance variable. An accessor that gets the instance variable’s value is called a getter; an accessor that sets the instance variable’s value is called a setter.

There are naming conventions for accessors, and you should obey them. The conventions are simple:

  • A setter’s name should start with set and be followed by a capitalized version of the instance variable’s name. If the instance variable is named myVar, the setter should be named setMyVar:. The setter should take one parameter: the new value to be assigned to the instance variable.
  • A getter should have the same name as the instance variable. If the instance variable is named myVar, the getter should be named myVar. (This will not cause you or ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required