Categories provide the ability to add functionality to an object without subclassing or changing the actual object.
Objective-C properties offer a way to define the information that a class is intended to encapsulate.
Blocks are a language-level feature, which allow to create distinct segments of code that can be passed around to methods or functions as if they were values. Blocks are Objective-C objects, which means they can be added to collections like NSArray or NSDictionary.
Key-value observing provides a mechanism that allows objects to be notified of changes to specific properties of other objects.
Most collections in Objective-C code are instances of one of the Cocoa and Cocoa Touch collection classes, like NSArray, NSSet and NSDictionary.
Object comparison refers to the ability of an object to determine whether it is essentially the same as another object. Copying an object creates a new object with the same class and properties as the original object. To support encoding and decoding of instances, a class must adopt the NSCoding protocol and implement its methods. This protocol declares two methods that are sent to the objects being encoded or decoded.
Objective-C allows you to define protocols, which declare the methods expected to be used for a particular situation.
The exception handling mechanisms available to Objective-C programs are effective ways of dealing with exceptional conditions. They decouple the detection and handling of these conditions and automate the propagation of the exception from the point of detection to the point of handling.
The Objective-C runtime is a runtime library that provides support for the dynamic properties of the Objective-C language, and as such is linked to by all Objective-C apps.
Key-value coding is a mechanism enabled by the NSKeyValueCoding informal protocol that objects adopt to provide indirect access to their properties.
The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.
A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!
Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.