Masses of Classes

Every object in Objective-C belongs to a class, because that's where behavior and internal data are specified. A class is where the methods (code) are defined and implemented. It's also where you define what instance variables (data) are managed by the class.

NSString is a class that provides a rich set of methods for storing and manipulating text. The NS in the name means it's a part of a system foundation framework in Cocoa Touch.

Note

Frameworks are collections of classes and other resources you can add to your application. You'll learn all about the Cocoa Touch framework that supplies all the interesting classes, like NSString, in the next chapter.

Also, since Objective-C lacks namespaces, frameworks typically use a two-character prefix to prevent class name collisions. Foundation classes, which were originally written for NeXTSTEP, use NS. The user interface classes in Cocoa Touch use UI.

Some developers use their own prefix for class names to avoid these types of conflicts. For example, the Iconfactory uses IF for all classes that are shared among projects.

Therefore, labelTitle points to an instance of a string object that's defined by the system.

Because you have this object pointer in a variable, you can send messages to it. For example, you can send the uppercaseString message to your labelTitle, and it will return a new string object that contains all the lowercase letters converted to uppercase letters:

NSString *moreAwesomeLabelTitle = [labelTitle uppercaseString]; ...

Get iPhone App Development: The Missing Manual now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.