Application Kit

Cocoa [ˈkoʊkoʊ] (engl. für „Kakao“) ist ein objektorientiertes API zur Programmierung unter dem Betriebssystem Mac OS X von Apple.

Cocoa-Programme sind meist solche mit einer graphischen Benutzeroberfläche (GUI), wobei ebenso auch die Entwicklung von z. B. Kommandozeilen-Tools oder Daemons möglich ist. Typischerweise erfolgt die Entwicklung mit Hilfe der „Developer Tools“, die Apple kostenfrei zur Verfügung stellt und die im Wesentlichen aus der IDE Xcode (Vorgänger: Project Builder) und dem Interface Builder bestehen.

Als primäre Programmiersprache dient dabei das an Smalltalk angelehnte Objective-C (eine objektorientierte Obermenge von C); C/C++ ist grundsätzlich innerhalb eines Projektes verwendbar[1]. Alternativ ist die Programmierung (mit Einschränkungen) aus Java heraus möglich. Insbesondere wird die Java-Cocoa Bridge von Apple überhaupt nicht mehr unterstützt. Weiterhin existieren Schnittstellen, um Cocoa aus anderen Sprachen zu nutzen, so etwa PerlObjCBridge (für Perl) oder die Open-Source-Projekte PyObjC (für Python) sowie RubyCocoa (für Ruby) und Cocoa# (für C# bzw. Mono). In der Betriebssystem-Version 10.4 enthält Cocoa sogar eine kleine Datenbank (SQLite). Die Mac-eigene Skriptsprache Apple Script kann genutzt werden, um einfache Aktionen und Routinen zu implementieren.

Inhaltsverzeichnis

Geschichte

Cocoa war zunächst der Name für eine in Sk8 geschriebene Multimedia-Entwicklungsumgebung von Apple für Kinder, welche später von der Firma Stagecast unter dem Namen Stagecast Creator weitergeführt wurde.

Das heutige Cocoa ist eine Weiterentwicklung von NeXTSTEP und OPENSTEP, das von der Firma NeXT in den späten 1980er Jahren entwickelt wurde.

Nach Erscheinen einer Betaversion von Safari für Windows im Juni 2007 kamen Gerüchte auf[2], dass Apple (wieder) an einer Portierung von Cocoa auf die Windows-Plattform arbeitet.

Frameworks

Cocoa besteht aus drei Frameworks:

  • Foundation stellt alle relevanten Basisklassen (Strings, Arrays, Speicher-Management, Iterators etc.) zur Verfügung.
  • Application Kit enthält Klassen zur Entwicklung graphischer Benutzeroberflächen, beispielsweise Fenster, Buttons oder Menüs.
  • CoreData (seit Mac OS X 10.4 – „Tiger“) zur Erstellung von Modellen.

Die Klassen des Cocoa-Frameworks tragen hauptsächlich die Kennung NS (NeXTStep).

Mit OS X werden weitere Frameworks geliefert, die jedoch keine Bestandteile von Cocoa selbst sind.

Diese Frameworks entsprechen in etwa dynamisch geladenen Objektbibliotheken (DLL/DSO). Sie stehen unter Mac OS X als kompilierte Objektdateien zur Verfügung. Die meisten der Frameworks, aus denen Cocoa besteht, wurden von Apple bislang noch nicht im Quelltext freigegeben.

Siehe auch

Literatur

  • Aaron Hillegass: Cocoa Programming for Mac OS X. 3. Auflage. Addison-Wesley Longman, Amsterdam, Upper Saddle River, NJ 2008, ISBN 978-0-3215-0361-9. 
  • Aaron Hillegass: Cocoa Programmierung für Mac OS X. Übersetzung der 3. Auflage. mitp-Verlag, Frechen, 2008, ISBN ISBN 978-3-8266-5960-7. 
  • Scott Anguish, Eric M. Buck, Donald A. Yacktman: Cocoa Programming. Sams, 2002, ISBN 978-0-6723-2230-3. 
  • Amin Negm-Awad: Objective-C und Cocoa Band 1: Grundlagen. Smartbooks, 2008, ISBN 978-3-9084-9782-0. 
  • Klaus M. Rodewig, Amin Negm-Awad: Objective-C und Cocoa. 2. Auflage. Smartbooks, 2007, ISBN 978-3-9084-9742-4. 

Einzelnachweise

  1. [http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/Articles/chapter_13_section_3.html Mixing Objective-C and C++ Language Features
  2. MacTechNews: „Existiert Cocoa für Windows?“

Weblinks


Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Application Kit — The Application Kit is a collection of classes within the OpenStep specification and provided by such operating systems as OPENSTEP, GNUstep, and Mac OS X under Cocoa, providing classes oriented around graphical user interface capabilities. An… …   Wikipedia

  • Kit — or KIT may refer to: Assembly* Scale model, item sold partially assembled * Kitbashing, the process of modifying a commercially available model kit * Electronic kit, a set of unassembled parts * Robot kit, special construction kit for building… …   Wikipedia

  • Kit-of-parts — Theory refers to the study and application of object oriented building techniques, where building components are pre designed / pre engineered / pre fabricated for inclusion in joint based (linear element), panel based (planar element), module… …   Wikipedia

  • Application Enhancer — (APE) is a software program released by Unsanity for Apple s Mac OS X operating system. Application Enhancer provides a framework that allows third party developers to write haxies for OS X. It also provides a daemon to load haxies when certain… …   Wikipedia

  • Kit de desarrollo de software — Un kit de desarrollo de software o SDK (siglas en inglés de software development kit) es generalmente un conjunto de herramientas de desarrollo de software que le permite al programador crear aplicaciones para un sistema concreto, por ejemplo… …   Wikipedia Español

  • Application programming interface — API redirects here. For other uses, see API (disambiguation). An application programming interface (API) is a source code based specification intended to be used as an interface by software components to communicate with each other. An API may… …   Wikipedia

  • Foundation Kit — Cocoa [ˈkoʊkoʊ] (engl. für „Kakao“) ist ein objektorientiertes API zur Programmierung unter dem Betriebssystem Mac OS X von Apple. Cocoa Programme sind meist solche mit einer graphischen Benutzeroberfläche (GUI), wobei ebenso auch die Entwicklung …   Deutsch Wikipedia

  • Technology Compatibility Kit — A Technology Compatibility Kit (TCK) is a suite of tests that at least nominally checks a particular alleged implementation of a Java Specification Request (JSR) for compliance. It is one of the three required pieces for a ratified JSR in the… …   Wikipedia

  • Speech Application Programming Interface — The Speech Application Programming Interface or SAPI is an API developed by Microsoft to allow the use of speech recognition and speech synthesis within Windows applications. To date a number of versions of the API have been released, which have… …   Wikipedia

  • Satellite Tool Kit — Infobox Software | name = STK caption = STK 8.0 being used to plan a lunar lagrange orbit. developer = Analytical Graphics, Inc. latest release version = 8.1.3 latest release date = March 13, 2008 operating system = Windows, Unix genre =… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”