Cocoa Touch
   HOME

TheInfoList



OR:

Cocoa Touch is the application development environment for building software programs to run on iOS for the iPhone and iPod Touch, iPadOS for the
iPad The iPad is a brand of iOS and iPadOS-based tablet computers that are developed by Apple Inc., Apple Inc. The iPad was conceived before the related iPhone but the iPhone was developed and released first. Speculation about the development, ...
, watchOS for the Apple Watch, and tvOS for the Apple TV, from Apple Inc. Cocoa Touch provides an abstraction layer of iOS, the
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
for the iPhone, iPod Touch, and iPad. Cocoa Touch is based on the
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
Cocoa API Cocoa is Apple's native object-oriented application programming interface (API) for its desktop operating system macOS. Cocoa consists of the Foundation Kit, Application Kit, and Core Data frameworks, as included by the Cocoa.h header file, and ...
toolset and, like it, is primarily written in the Objective-C language. Cocoa Touch allows the use of hardware and features that are not found in macOS computers and are thus unique to the iOS range of devices. Just like Cocoa, Cocoa Touch follows a Model–View–Controller (MVC) software architecture. Cocoa Touch contains a different set of graphical control elements from Cocoa. Tools for developing applications based on Cocoa Touch are included in the
iOS SDK The iOS SDK (iOS Software Development Kit), formerly the iPhone SDK, is a software development kit (SDK) developed by Apple Inc. The kit allows for the development of mobile apps on Apple's iOS and iPadOS operating systems. The iOS SDK is a f ...
.


Cocoa Touch in relation to other layers

iOS, watchOS, and tvOS technologies can be seen as a set of layers, with Cocoa Touch at the highest level and the Core OS/ kernel at the bottom. A hierarchical view of the iOS, watchOS, and tvOS technologies can be shown as follows: # Cocoa Touch # Media / Application Services # Core Services # Core OS / iOS kernel


Main features

Some of the main features and technologies of Cocoa Touch are: * App Extension * Data Management * Handoff * Document Picker * AirDrop * TextKit * UIKit Dynamics * Multitasking * Auto Layout * Storyboards * UI State Preservation * Apple Push Notification Service * Local Notifications * Gesture Recognisers * Standard System View Controllers


Main frameworks

Cocoa Touch provides the key
framework A framework is a generic term commonly referring to an essential supporting structure which other things are built on top of. Framework may refer to: Computing * Application framework, used to implement the structure of an application for an op ...
s for developing applications on devices running iOS. Some of these key frameworks are: * Foundation Kit *UIKit (based on Application Kit) *GameKit * iAd (discontinued in 2016) *MapKit * Address Book UI * EventKit UI * Message UI * Notification Center * PushKit * Twitter


Ports

Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washi ...
's WinObjC, the GNUstep-based iOS bridge for the Universal Windows Platform, contains a working implementation of Cocoa Touch frameworks like Foundation, UIKit, and MapKit released under the MIT License. One of the UIKit implementations is based on XAML. Various efforts have tried to bring UIKit, the modified AppKit from Cocoa Touch, to macOS: * Chameleon is a port of UIKit to
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
from 2014. * ZeeZide's UXKit is a more recent port of UIKit to macOS. It exists a layer above AppKit and UIKit. * Apple used a "UXKit" private framework for a 2015 version of Photos.app. * Apple made the bridge more official with the "iosMac" or "Marzipan" project in 2018, which put an "iOSSupport" directory full of iOS frameworks in macOS Mojave. They were originally restricted from developer use and was finally made official with the release of
Mac Catalyst macOS Catalina (version 10.15) is the sixteenth major release of macOS, Apple Inc.'s desktop operating system for Macintosh computers. It is the successor to macOS Mojave and was announced at WWDC 2019 on June 3, 2019 and released to the publi ...
in 2019.


References

{{iOS Gesture recognition IOS IPhone Proprietary software