Carbon (API): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Ampliata e aggiornata la voce Carbon ed inserite le fonti
mNessun oggetto della modifica
 
(3 versioni intermedie di 2 utenti non mostrate)
Riga 1:
{{S|informatica}}
'''Carbon'''<ref>{{Cita libro|titolo=Cocoa Programming for macOS di Aaron Hillegass}}</ref> è stato il nome dato da [[Apple|Apple Inc.]] allead un insieme di [[Application programming interface|API]] contenute nel [[sistema operativo]] [[macOS]], precedentemente noto come Mac OS X. Questo setgruppo di API consentiva ai programmi scritti per [[Classic Mac OS]] di funzionare sul nuovo sistema operativo tramite piccole modifiche.
 
Carbon<ref>{{Cita èlibro|titolo=Mac statoOS X and iOS Internals: To the Apple's Core di Jonathan Levin}}</ref> fu introdotto da [[Apple]] come una piattaforma di sviluppo per Mac OS 8.1<ref>{{Cita libro|titolo=Programming for macOS: Programming for Apple's macOS using the Swift Language di Matt Neuburg}}</ref> e per Mac OS 9, ma con l'intento di beneficiare il futuro macOS, allora in pieno sviluppo. Con lo stesso [[codice sorgente]] di un'[[Applicazione (informatica)|applicazione]] Carbon era possibile creare [[File eseguibile|binari]] sia per Classic Mac OS, sia per macOS. Queste API sono state un elemento importante nella strategia software di Apple, perché hahanno permesso di velocizzare il [[porting]] delle applicazioni sulla nuova piattaforma, quindi promuovendone la diffusione e alagevolando contempola ditransizione continuareper agli distribuiresviluppatori che avevano già creato applicazioni scritte per [[Macle OSversioni 8]]precedenti edi [[Mac OS 9|OS 9]]. Senza le librerie Carbon, l'unicogli unici modomodi per utilizzareeseguire le vecchie applicazioni erain quellomacOS dierano utilizzare il programmal'ambiente di emulazione [[Classic (software)|Classic]] fornitoo conla Macloro OScompleta Xriscrittura ousando di riscriverleil totalmente perframework [[Cocoa (software)|Cocoa]]<ref>{{Cita libro|titolo=Cocoa Design Patterns di Erik M. Buck e Donald A. Yacktman}}</ref>, progettato specificamente per macOS.
 
Le API erano formate da [[header file]] per il [[C (linguaggio)|linguaggio C]] e da delle librerie dinamiche che implementanoincorporavano le funzionifunzionalità effettive. Le implementazioni delle librerie differivano a seconda deidella sistemiversione operatividel sistema operativo, ma questo non davaera problemirilevante all'eseguibile dato che per esso gli header erano gli stessi e il comportamento delle API era identico.
 
Apple nel tempo si è concentrata sempre di più sulle librerie Cocoa, soprattutto con l'introduzione del [[Software development kit|SDK]] per [[iPhone]], dove Carbon è assente. Non essendo mai stato convertito a [[64 bit]], Carbon è stato deprecato in [[OS X Mountain Lion]] e dismesso definitivamente in [[macOS Catalina]].
 
Carbon<ref>{{Cita libro|titolo=Mac OS X and iOS Internals: To the Apple's Core di Jonathan Levin}}</ref> fu introdotto da [[Apple]] come una piattaforma di sviluppo per Mac OS 8.1<ref>{{Cita libro|titolo=Programming for macOS: Programming for Apple's macOS using the Swift Language di Matt Neuburg}}</ref> e Mac OS 9, che erano le versioni del sistema operativo precedenti all'arrivo di macOS (all'epoca conosciuto come Mac OS X). Gli sviluppatori potevano utilizzare le API di Carbon per creare applicazioni native per il sistema operativo Mac. Questo approccio offriva una transizione più agevole per gli sviluppatori che avevano già creato applicazioni per le versioni precedenti di Mac OS.
 
Un vantaggio di Carbon era la compatibilità con il vasto parco installato di applicazioni [[Classic Mac OS|Mac OS]] classic. Questo ha consentito alle applicazioni esistenti di essere portate più facilmente su [[MacOS|Mac OS X]], contribuendo a garantire una transizione graduale e senza intoppi verso la nuova piattaforma.
 
Tuttavia, nel tempo, Apple ha spinto per una transizione completa verso il [[framework]] Cocoa, che è stato progettato specificamente per macOS. [[COCOA (informatica umanistica)|Cocoa]] è basato su [[Objective-C]] e offre molte funzionalità avanzate per lo sviluppo di applicazioni, inclusa una potente interfaccia utente e un sistema di gestione degli eventi.
 
Con il passaggio a Intel come architettura di processore e il rilascio di macOS 10.5 Leopard, Apple ha annunciato che Carbon sarebbe stato supportato solo in modo limitato. Ciò ha spinto gli sviluppatori a modernizzare le loro applicazioni e passare a Cocoa o ad altri framework più recenti.
 
In definitiva, Carbon ha svolto un ruolo cruciale nella transizione da [[Classic Mac OS|Mac OS]] classic a macOS e ha permesso una transizione graduale per gli sviluppatori.
 
Apple nel tempo si è concentrata sempre di più sulle librerie Cocoa, soprattutto con l'introduzione del [[Software development kit|SDK]] per [[iPhone]], dove Carbon è assente. Non essendo mai stato convertito completamente a [[64 bit]]<ref>{{Cita web|url=https://developer.apple.com/library/archive/documentation/Carbon/Conceptual/Carbon64BitGuide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40004381-CH1-SW1|titolo=Introduction to 64-Bit Guide for Carbon Developers|sito=developer.apple.com|accesso=2023-12-28}}</ref> già ai tempi di [[Mac OS X Leopard]], Carbon è stato deprecato in [[OS X Mountain Lion]]<ref>{{Cita web|url=https://developer.apple.com/library/archive/releasenotes/General/CarbonCoreDeprecations/index.html#//apple_ref/doc/uid/TP40012224|titolo=Carbon Core Deprecations|sito=developer.apple.com|accesso=2023-12-28}}</ref> e dismesso in [[macOS Catalina]], anche se pare alcune API a 64 bit siano rimaste disponibili nelle versioni successive di macOS<ref>{{Cita web|url=https://developer.apple.com/forums/thread/737203|titolo=Apple Silicon Native Support For C… {{!}} Apple Developer Forums|sito=developer.apple.com|accesso=2023-12-28}}</ref>. La fine del supporto ha comunque spinto gli sviluppatori a modernizzare le loro applicazioni e passare a Cocoa o ad altri framework più recenti.
==Note==
<references/>
== Collegamenti esterni ==
* {{Collegamenti esterni}}