2 votes

Dans le cadre du développement de logiciels d'application Mac OS X, devez-vous utiliser Objective-C pour compiler et lier un format exécutable ?

Je veux dire qu'Objective-C est le seul langage disponible, ou peut-on utiliser un compilateur/lien C standard optimisé pour le format d'exécutable suffisant (Mach-O/PEF) ?

Ma question de base est la suivante : est-il possible d'utiliser d'autres langages pour générer le format de fichier objet, binaire ou de bibliothèque partagée équivalent au code analysé et chargé par les versions similaires à Mac OS X ?

(par exemple, C, C++, D, etc. ?)

1voto

Grezgory Points 330

Vous pouvez également utiliser C ou C++ pour compiler des binaires et des exécutables. Objective-C est principalement la source pour le développement de l'interface utilisateur de MacOS (Cocoa), mais même là il y a encore l'interface de la vieille école (Carbon) disponible, juste pour cette dernière les projets d'échantillon et les docs sont difficiles à trouver de nos jours.

Mais si vous voulez créer un outil qui fonctionne comme les outils Unix classiques (stdin/stdout) ou une bibliothèque partagée, C ou C++ sont des solutions absolument viables. Par exemple, vous pouvez télécharger Xcode et, à partir de l'interface ou de la ligne de commande (gcc), vous pouvez facilement compiler un simple fichier int main(int, char**) { printf("Hello World!"); return 0; } programme.

De plus, Objective-C n'est qu'une extension du C, vous n'êtes donc pas obligé d'utiliser ses fonctionnalités.

0 votes

Mais peut-on utiliser C++ pour appeler les fonctions de l'API Cocoa ? Cela semble possible s'il y a une couche de colle entre les appels C++ et Objective-C, mais cela existe-t-il ?

1 votes

@Eric pas exactement mais l'utilisation d'Objective-C++ signifie que vous pouvez utiliser à la fois C++ et Cocoa. Vous pouvez également utiliser d'autres bibliothèques d'interface graphique C++ comme Qt++, GTK, Wx. Mais il est vraiment préférable d'apprendre l'Objective C

0 votes

@Eric Vous pouvez utiliser la bibliothèque d'exécution objective-c (fonctions C), en particulier objc_msgSend y sel_registerName . Voir /usr/include/objc/objc.h y message.h . Un compilateur objective-c fait correspondre chaque message à un appel de objc_msgSend .

0voto

Kevin Points 549

Il existe de nombreux autres langages qui peuvent être utilisés pour créer des applications iOS. Xojo est l'une des plus faciles à utiliser si vous n'avez pas une grande expérience du codage.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X