Ios Developer Library – Stanford University Developing IOS 7 Apps
Ios Developer Guidelines – Rules of Simple Design
Cocoa is Apple’s native object-oriented application programming interface (API) for the OS X operating system.
For iOS, there is a similar API called Cocoa Touch which includes gesture recognition, animation, and a different set of graphical control elements, and is for applications for the iOS operating system, used on Apple devices such as iPhone, iPad, iPod Touch and Apple TV.
Cocoa consists of the Foundation Kit, Application Kit, and Core Data frameworks, as included by Cocoa.h header file, as well as the libraries and frameworks included by those, such as the C standard library and the Objective-C runtime.
Cocoa applications are typically developed using the development tools provided by Apple, specifically Xcode (formerly Project Builder) and Interface Builder, using the Objective-C or Swift language. However, the Cocoa programming environment can be accessed using other tools, such as Clozure CL, LispWorks, Object Pascal, Python, Perl, Ruby, and AppleScript with the aid of bridging mechanisms such as PasCocoa, PyObjC, CamelBones, RubyCocoa and a D programming language/Objective-C Bridge. An implementation of the Ruby language, called MacRuby, which did away with the requirement for a bridging mechanism, was previously developed by Apple, while Nu is a Lisp-like language that can be used with Cocoa without a bridge. It is also possible to write Objective-C Cocoa programs in a simple text editor and build it manually with GCC or clang from the command line or from a makefile.
For end-users, Cocoa applications are those written using the Cocoa programming environment. Such applications usually have a distinctive feel, since the Cocoa programming environment automates many aspects of an application to comply with Apple’s human interface guidelines.
iOS Development with Swift Tutorials
The Gourmet iOS Developer’s Cookbook: Even More Recip Online Book
Further information: History of OS X
Cocoa continues the lineage of several software frameworks (primarily the App Kit and Foundation Kit) from the NeXTSTEP and OpenStep programming environments developed by NeXT in the 1980s and 1990s. Apple acquired NeXT in December 1996, and subsequently went to work on the Rhapsody operating system that was supposed to be the direct successor of OpenStep. It was to have had an emulation base for Mac OS applications, called Blue Box. The OpenStep base of libraries and binary support was termed Yellow Box. Rhapsody evolved into Mac OS X, and the Yellow Box became Cocoa. As a result, Cocoa classes begin with the letters “NS”, such as NSString or NSArray. These stand either for the NeXT-Sun creation of OpenStep, or for the original proprietary term for the OpenStep framework, NeXTSTEP.
Much of the work that went into developing OpenStep was applied to the development of Mac OS X, Cocoa being the most visible part. There are, however, some differences. For example, NeXTSTEP and OpenStep used Display PostScript for on-screen display of text and graphics, while Cocoa depends on Apple’s Quartz (which uses the PDF imaging model, but not its underlying technology). Cocoa also has a level of Internet support, including the NSURL and WebKit HTML classes, and others, while OpenStep had only rudimentary support for managed network connections through NSFileHandle classes and Berkeley sockets.
The resulting software framework received the name “Cocoa” for the sake of expediency, because the name had already been trademarked by Apple. For many years prior to this present use of the name, Apple’s “Cocoa” trademark had originated as the name of a multimedia project design application for children. The application was originally developed at Apple’s Advanced Technology Group under the name “KidSim”, and was then renamed and trademarked as “Cocoa”. The name, coined by Peter Jensen who was hired to develop Cocoa for Apple, was intended to evoke “Java for kids,” as it ran embedded in web pages. The trademark, and thus the name “Cocoa”, was re-used to avoid the delay which would have occurred while registering a new trademark for this software framework. The original “Cocoa” program was discontinued at Apple in one of the rationalizations that followed Steve Jobs’ return to Apple. It was then licensed to a third party and marketed as Stagecast Creator as of 2011. .