title: Cocoa (software)
text: # Cocoa (software)
  
  In informatica, Cocoa è l'ambiente nativo di programmazione orientato agli oggetti sviluppato dalla Apple Inc. per i sistemi operativi di Apple, come macOS, iPadOS e iOS.
  
  Le applicazioni Cocoa sono normalmente sviluppate utilizzando gli strumenti di sviluppo messi a disposizione da Apple che sono Xcode (precedentemente Project Builder) e Interface Builder.
  
  I linguaggi supportati da Xcode sono Objective C, AppleScript, C++, Java e Swift, ma l'ambiente Cocoa è utilizzabile anche con altri programmi di sviluppo e utilizzando anche linguaggi come Perl, Python (grazie al bridge PyObjC) e Ruby (grazie a RubyCocoa).
  
  Per gli utenti finali, le applicazioni Cocoa sono facilmente riconoscibili dovendo aderire alle linee guida stabilite dall'Apple. L'ambiente Cocoa include molti servizi, ed essendo Cocoa un ambiente orientato agli oggetti, questi servizi vengono ereditati dalle applicazioni che si appoggiano a Cocoa. Un esempio è il correttore ortografico, che è integrato in ogni programma Cocoa dato che in realtà è un servizio e non dipende dal singolo programma.
  
  Il design di Cocoa è stato sempre considerato uno dei suoi punti di forza, fino al punto che le soluzioni architetturali che ha adottato hanno ispirato molti Design Patterns formalizzati.
  
  Le applicazioni Cocoa e Carbon sono quelle applicazioni native per Mac OS X. Le applicazioni che utilizzano Carbon possono essere eseguite, se il programmatore l'ha previsto, anche sotto Mac OS 9. Infine ci sono le applicazioni Classic che funzionano solo, per l'appunto, nell'ambiente Classic (Mac OS 9) o sotto il suo ambiente di emulazione in Mac OS X.
  
  