Avantages et inconvénients de l'objectif C

Objective C est une émanation du langage de programmation C, mis au point dans les années 1970 comme l'un des premier langage de programmation des systèmes de niveau supérieur. Objectif C intègre la syntaxe de C avec les capacités orientées objet de Smalltalk. Apple a intégré son cadre de développement, Cocoa, Objective C pour la programmation sur le système d'exploitation Mac. Objectif C est utile pour les développeurs d'Apple, mais il perd une partie de son charme si une application doit être cross-platformed avec un autre système d'exploitation. En outre, l'objectif C ne supporte pas le "namespaces" caractéristique de C ++ (une autre ramification de C), qui aide à faire face à de multiples bibliothèques et les modules de code tiers.

Développement du langage pour les plates-formes populaires

L'un des avantages de l'objectif C est qu'il est la langue principale utilisée pour développer des applications pour les produits Apple. Objectif C est le langage de programmation développé spécifiquement pour fonctionner avec le cadre de programmation Cocoa, ce qui signifie qu'il a accès aux bibliothèques de développement d'Apple. Création d'applications pour tout produit d'Apple, tels que le système X OS iPod, iPad ou, exige une certaine connaissance de l'objectif C.

Objectif C Runtime

C et C ++ sont "compilés" langages de programmation, ce qui signifie que le code source écrit par le programmeur est traduit en langage machine, la création d'un fichier exécutable qui fonctionne sur le système d'exploitation d'un utilisateur. Les langages compilés sont limités dans leur fonctionnement: De nombreuses décisions concernant l'allocation de mémoire et de création d'objets se produisent dans le temps de compilation, pas pendant les exécute des programmes (runtime). Un programme écrit en Objective C est plus dynamique, capable de recueillir des informations sur lui-même pour prendre des décisions concernant les types de mémoire ou de données, plutôt que d'avoir des décisions avait fait pendant le temps de codage.

Namespaces

Un des inconvénients de la programmation en Objective C est qu'il ne contient pas namespaces. Dans d'autres langues, en particulier C ++, namespaces contient la fonctionnalité définie par un nom. Fonctions dans un espace de noms existent seulement dans le champ d'application de cet espace de noms, ce qui signifie qu'une autre fonction avec un nom identique dans un autre espace de noms peut être utilisé par le programmeur sans modifier les noms. Cela permet aux programmeurs d'importer une variété de bibliothèques et de ne pas s'inquiéter inutilement sur les noms de fonctions contradictoires. En Objective C, l'importation de deux bibliothèques avec le même nom de la fonction peut provoquer une erreur si le programmeur ne fait pas attention, parce que le compilateur n'a aucun moyen de savoir ce qui fonctionne réellement appeler.

Portabilité

Un autre inconvénient de l'objectif C est qu'elle repose fortement sur le framework Cocoa pour sa fonctionnalité. Bien que ce soit un avantage pour les développeurs d'Apple, les développeurs Windows ne trouveront pas le même succès à écrire des applications Windows en Objective C. Au contraire, le développement de Windows se concentre sur les bibliothèques .NET, lié à la Visual C ++, C # ou VB.NET langages de programmation. les développeurs d'Apple doivent pas se soucier de cette baisse, à moins qu'ils recherchent la portabilité multi-plateforme.