Guidelines for creating Cocoa frameworks (APIs)

Apple on developing a Cocoa framework:

The primary clients of your product are developers, and it is important that they are not mystified by your programmatic interface. This is where API naming conventions come in handy…there are also programming techniques that are special to—or of greater importance with—frameworks, such as versioning, binary compatibility, error-handling, and memory management.