2009-12-13 5 views
3

Quelle est la différence entre le carbone et le cacao? Pour quel type d'applications nous devrions utiliser le carbone et pour quel type d'applications nous devrions utiliser le cacao? Quel est le meilleur des deux pour développer des applications sous Mac OS?différence entre le carbone et le cacao?

+3

Ce fil de discussion a probablement les réponses que vous cherchez: http://stackoverflow.com/questions/151711/carbon-vs-cocoa-is-carbon-a-dead-end-with-os-x –

Répondre

7

Carbon a été créé pour faciliter les déplacements de et vers Mac OS 8 et 9. Si votre code doit fonctionner sous OS 8 ou 9, alors Carbon est la voie à suivre. . (Source)

Toutefois, si votre logiciel est conçu pour OS X, vous devez mettre l'accent sur Cocoa over Carbon.

3

Le carbone est déprécié (il n'existe pas et n'existera pas en 64 bits). Pour le développement d'une nouvelle application, utilisez Cocoa (je parle du développement d'applications OS X natif, de la manière Apple-sactioned.) Évidemment, d'autres alternatives existent, telles que Java, Python, Ruby, etc. votre type de projet si une interface utilisateur native n'est pas nécessaire)

+7

Cacao et Carbon sont des API, pas des langues. Java, Python et Ruby ne sont pas des "alternatives" à Cocoa. Bien qu'il y ait quelques mises en garde sérieuses, vous pouvez accéder à la fois au carbone et au cacao de ces trois langues. – dmazzoni

+1

Jamais dit Cocoa et Carbon étaient des langues. En outre, Java, Python et Ruby sont certainement des alternatives au développement d'applications Cocoa si votre projet ne nécessite pas d'interface utilisateur native. Mon point était, il y a d'autres options * en fonction de son type de projet.* – wadesworld

+2

@Wade Vous confondez toujours les API avec les langues. Tandis que Cocoa est en effet le mieux utilisé avec Objective-C, Java, Python et Ruby, tous y ont également accès. Ils ne sont pas des "alternatives" au cacao. – phoebus

11

Réponse courte: Pour une nouvelle application, utilisez Cocoa. Un code existant peut toujours utiliser Carbon et si vous n'avez pas besoin de nouvelles fonctionnalités, il continuera à fonctionner.

Cocoa a une API Objective-C, et est facilement accessible à partir des codes C et C++. Le carbone est une API pure-C. Il existe des liaisons Cocoa et Carbon pour de nombreuses autres langues populaires, mais il y a souvent des limites.

Carbon est une évolution de l'API d'origine pour le Macintosh d'origine Apple (et Apple Lisa) au début des années 1980. Plus précisément, lorsque Mac OS X a été lancé, Apple n'était pas en mesure de prendre en charge certaines fonctions de l'API Mac OS héritées, mais fournissait un sous-ensemble d'API héritées appelées «Carbon» pour faciliter la transition pour les développeurs ayant des applications antérieures à Mac OS X Ils ont ajouté des milliers de nouvelles API et ont continué à soutenir pleinement Carbon pendant plusieurs années, avant de finalement le déprécier plus récemment. Ils ont toujours dit que Carbon est une impasse et que tous les développeurs devraient passer à Cocoa. Cocoa a évolué à partir du framework NextStep qu'Apple a acquis et utilisé comme base pour créer Mac OS X. Il s'agit de l'API «native» pour Mac OS X et le seul moyen d'accéder à certaines des fonctionnalités les plus récentes.

0

Cela dépend de la portée et des fonctions de l'application que vous allez développer. Je vais créer une application qui utilise les capacités MacInTalk et le nouvel ensemble international de voix OSX 10.7. La documentation officielle indique que la mise au point n'est fournie que sous les API Carbon, alors que les API Cocoa sont plus limitées. Plus précisément, ces paramètres de canal vocal peuvent être modifiés via API dans Carbon: débit, hauteur, modulation de hauteur et attributs de volume. Cette possibilité semble être indisponible via Cocoa. D'un autre côté, la documentation la plus récente du Guide de programmation de synthèse vocale date de 2006 et il se peut que Cocoa ait accès à la même fonctionnalité, mais ce n'est pas encore documenté.

Questions connexes