Cocoa Touch is a UI framework for building software programs to run on the iOS operating system (for the iPhone, iPod Touch, and iPad) from Apple Inc.Cocoa Touch provides an abstraction layer of iOS, the operating system for the iPhone, iPod Touch, and iPad. Cocoa Touch is based on the Mac OS X Cocoa API toolset.Cocoa Touch allows the use of hardware and features that are not found in Mac OS X computers and are thus unique to the iOS range of devices. Just like Cocoa, Cocoa Touch follows a Model-View-Controller (MVC) software architecture.

The Cocoa Touch frameworks that drive iOS apps share many proven patterns found on the Mac, but were built with a special focus on touch-based interfaces and optimization. UIKit provides the basic tools you need to implement graphical, event-driven applications in iOS. UIKit builds on the same Foundation framework infrastructure found on the OS X, including file handling, networking, string building, and more.

The unique interface of iOS means that Cocoa Touch has a unique design to match. Using UIKit you have access to the special GUI controls, buttons, and full-screen views on iOS. You also get to control your application with the accelerometer and the multi-touch gesture.

Complete Assortment of Frameworks

In addition to UIKit, the Cocoa Touch collection of frameworks includes everything needed to create world-class iOS apps, from 3D graphics, to professional audio, to networking, and even special device access APIs to control the camera, or get location from the GPS hardware. Cocoa Touch includes powerful Objective-C frameworks that perform entire tasks in only a few lines of code, while providing the foundational C-language APIs to give direct access to the system when needed.