The Foundation framework defines a base layer of Objective-C classes. In addition to providing a set of useful primitive object classes, it introduces several paradigms that define functionality not covered by the Objective-C language. The Foundation framework is designed with these goals in mind:
· Provide a small set of basic utility classes.
· Make software development easier by introducing consistent conventions for things such as deallocation.
· Support Unicode strings, object persistence, and object distribution.
· Provide a level of OS independence, to enhance portability.