Objective-C LanguagePremiers pas avec le langage Objective-C


Versions

Version Date de sortie
1.0 1983-01-01
2.0 2007-10-27
Moderne 2014-03-10

Bonjour le monde

Ce programme va afficher "Hello World!"

#import <Foundation/Foundation.h>

int main(int argc, char * argv[]) {
    NSLog(@"Hello World!");
}
 

#import est une directive de préprocesseur, qui indique que nous voulons importer ou inclure les informations de ce fichier dans le programme. Dans ce cas, le compilateur copiera le contenu de Foundation.h dans le framework Foundation en haut du fichier. La principale différence entre #import et #include est que #import est suffisamment "intelligent" pour ne pas retraiter les fichiers qui ont déjà été inclus dans d'autres #includes.

La documentation du langage C explique la fonction main .

La fonction NSLog() imprimera la chaîne fournie à la console, ainsi que certaines informations de débogage. Dans ce cas, nous utilisons un littéral de chaîne Objective-C: @"Hello World!" . En C, vous écrivez ceci comme "Hello World!" Cependant, le Framework de base d'Apple ajoute la classe NSString , qui fournit de nombreuses fonctionnalités utiles et est utilisée par NSLog. La façon la plus simple de créer une instance de NSString est la suivante: @" string content here " .

Techniquement, NSLog () fait partie du framework Foundation d'Apple et ne fait pas réellement partie du langage Objective-C. Cependant, le cadre de la Fondation est omniprésent dans la programmation d'Objective-C. Étant donné que Foundation Framework n'est pas open-source et ne peut pas être utilisé en dehors du développement d'Apple, il existe des alternatives open-source au framework associées à OPENStep et GNUStep .


Compiler le programme

En supposant que nous voulions compiler notre programme Hello World, constitué d’un seul fichier hello.m , la commande pour compiler l’exécutable est la suivante:

clang -framework Foundation hello.m -o hello
 

Ensuite, vous pouvez l'exécuter:

./hello
 

Cela va sortir:

Hello World!
 

Les options sont les suivantes:

  • -framework : Spécifie un framework à utiliser pour compiler le programme. Comme ce programme utilise Foundation, nous incluons le framework Foundation.

  • -o : Cette option indique à quel fichier nous aimerions sortir notre programme. Dans notre cas hello . S'il n'est pas spécifié, la valeur par défaut est a.out .