Accueil Médias sociaux Fonctionnement d'Introspection dans iOS Apps - Les nuls

Fonctionnement d'Introspection dans iOS Apps - Les nuls

Table des matières:

Vidéo: Thrive : l'application pour réduire l'addiction aux autres applications 2025

Vidéo: Thrive : l'application pour réduire l'addiction aux autres applications 2025
Anonim

L'introspection fait référence aux fonctionnalités d'une application iOS langage de programmation pour examiner la structure et d'autres détails d'un objet et de sa classe au moment de l'exécution. Ces détails peuvent inclure:

  • Arbre d'héritage d'un objet

  • S'il est conforme à un protocole spécifique

  • S'il répond à un certain message

Lorsque vous savez de quoi un objet est fait, vous pouvez construire des messages par programme à envoyer, ce qui rend votre programme beaucoup plus dynamique.

Comment obtenir la classe d'un objet

Vous pouvez obtenir la classe d'un objet lors de l'exécution. En fait, Objective-C traite les classes comme des objets de première classe. Chaque objet de classe pointe vers une structure de données en mémoire, possède une superclasse (connue sous le nom de métaclasse) et peut répondre à des messages qui invoquent des méthodes.

Lorsque vous appelez une méthode de classe, vous envoyez réellement un message à l'objet de la classe.

Vous pouvez obtenir une référence à l'objet de classe pour la classe en envoyant à la classe un message de classe (Garçon, était-ce déroutant d'écrire?), Et vous obtenez la superclasse d'une classe en envoyant le objecter un message de superclasse. Par exemple, vous pouvez imprimer la classe et la superclasse d'un objet, tel qu'un objet StackOfInteger, comme suit:

StackOfInteger * aStack = [[StackOfInteger alloc] init]; NSLog (@ "La classe est% @, et super est% @.", [AStack class], [aStack superclass]);

Comment appeler dynamiquement les méthodes

Vous pouvez ensuite appeler une méthode sur un objet de classe comme ceci:

Classe postfixCalculatorClass = [someObject class]; [postfixCalculatorClass performSelector: @selector (printClassDescription)];

Deux éléments doivent être expliqués ici. Tout d'abord, le @selector est une directive de compilation -time et renvoie un pointeur vers la méthode printClass. Ensuite, vous pouvez utiliser performSelector pour appeler cette méthode.

Dans l'exemple précédent, le nom de la méthode a été traduit en un pointeur vers la méthode au moment de la compilation. Vous pouvez également appeler une méthode d'instance sur un objet en utilisant le nom de chaîne d'une méthode, lors de l'exécution, comme suit:

SEL printClassDescriptionSEL = NSSelectorFromString (@ "printClassDescription"); [postfixCalculatorClass performSelector: printClassDescriptionSEL];

Dans cet exemple, vous pouvez utiliser le type SEL (également appelé sélecteur dans le langage Objective-C, et donc le SEL) pour contenir la représentation interne d'une méthode.

Comment vérifier la spécification d'un objet

Une fois que vous avez un handle pour un objet de classe, vous pouvez l'examiner à l'exécution en utilisant les fonctions d'introspection fournies dans Objective-C.Par exemple, vous pouvez tester cet objet pour voir de quel type il s'agit. Vous pouvez l'inspecter pour voir s'il a une certaine méthode ou un certain attribut, et ainsi de suite.

Le tableau ci-dessous montre toutes les méthodes pour tester la structure et les capacités d'un objet de classe et pour effectuer des actions sur celui-ci.

Méthode Question ou Action
- (BOOL) isKindOf: class-object L'objet est-il un membre ou un descendant d'une classe?
- (BOOL) isMemberOf: class-object L'objet est-il membre d'une classe?
- (BOOL) répond à: sélecteur L'objet peut-il répondre à une méthode?
+ (BOOL) instancesRespondTo: selector Les instances de la classe peuvent-elles répondre à un message?
- (id) exécute: sélecteur Applique la méthode spécifiée par le sélecteur.
+ (BOOL) conformsToProtocol: (Protocole *) aProtocol OUI si le destinataire est conforme au protocole aProtocol; sinon, NON.

Pour plus de détails sur l'introspection et son utilisation, consultez le document Apple iOS Runtime Reference et le Guide de programmation d'Apple Developer Objective-C.

Fonctionnement d'Introspection dans iOS Apps - Les nuls

Le choix des éditeurs

Spotify Mobile Service avec un compte Premium - Les nuls

Spotify Mobile Service avec un compte Premium - Les nuls

Les deux principaux avantages des abonnés Spotify Premium sur Spotify Free ou Les détenteurs d'un compte illimité ont la capacité d'accéder au catalogue de diffusion en continu de Spotify via un appareil mobile et d'écouter des pistes en mode hors connexion à l'aide de votre application mobile ou informatique. Ce sont les deux caractéristiques qui justifient le fait que Spotify ...

Spotify Listes de lecture de Mobile - mannequins

Spotify Listes de lecture de Mobile - mannequins

Comme sur votre ordinateur, vous pouvez gérer les listes de lecture Spotify sur votre téléphone. Toute modification apportée à votre liste de lecture est synchronisée sur tous les appareils auxquels vous êtes connecté, en temps réel. Lorsque vous démarrez l'application Spotify, toutes vos playlists sont affichées immédiatement, mais vous pouvez y accéder à tout moment en appuyant sur ...

Spotify vous permet de vous lier à peu près n'importe quoi - les tuls

Spotify vous permet de vous lier à peu près n'importe quoi - les tuls

Spotify vous permet de copier des liens Web et des URI vous pouvez coller où vous voulez: dans les blogs, les e-mails, les réseaux sociaux, même les documents de traitement de texte. Cliquez avec le bouton droit de la souris sur ce que vous voulez partager et choisissez une option de copie dans le menu contextuel qui s'affiche généralement. Dans certains cas, si vous savez comment un lien est construit, ...

Le choix des éditeurs

Médias sociaux et marketing par e-mail - nuls

Médias sociaux et marketing par e-mail - nuls

Réseaux sociaux clients potentiels via des sites Web et des e-mails. Rappelez-vous, la suppression des e-mails pour gagner du temps est le mode opératoire pour les gens connectés en ligne dans les affaires ces jours-ci. Certaines entreprises estiment avoir le droit d'envoyer des offres quotidiennes et des promotions accompagnées de fanfares. Est-il même possible pour une entreprise de ...

Social Media Commerce: Enregistrement client par Mobile App - dummies

Social Media Commerce: Enregistrement client par Mobile App - dummies

Certains médias sociaux Les applications récompensent leurs utilisateurs pour l'enregistrement depuis les smartphones au fur et à mesure qu'ils passent d'un endroit à un autre dans le monde des briques et du mortier. Cette activité d'enregistrement mobile est populaire auprès de ceux qui se connectent en ligne. Vous pouvez encourager les gens à se présenter à votre lieu de travail. Le leader actuel sur le marché est Foursquare, un ...

Social Media Commerce: Blog pour votre entreprise - dummies

Social Media Commerce: Blog pour votre entreprise - dummies

Quand vous vous sentez prêt Pour passer à l'étape suivante dans le commerce des médias sociaux et faire quelque chose au-delà d'un site Web d'entreprise, vous pouvez développer un blog pour communiquer avec les clients. Les blogs offrent un espace à votre entreprise pour améliorer son message et répondre aux commentaires des lecteurs. Un blog (à partir du web-journal) peut ...

Le choix des éditeurs

Comment traduire votre réseau Ning en une langue non prise en charge - les nuls

Comment traduire votre réseau Ning en une langue non prise en charge - les nuls

Bien que Ning supporte 18 langues , avec autant de langues dans le monde, vous devrez peut-être traduire votre réseau en un réseau que Ning ne prend pas en charge. Créer une nouvelle traduction:

Comment syndiquer le contenu de votre réseau Ning - des nuls

Comment syndiquer le contenu de votre réseau Ning - des nuls

Votre réseau Ning vous offre de nombreuses façons d'utiliser Flux RSS pour syndiquer le contenu que vous et vos membres contribuent au réseau. Si les titres des éléments des flux RSS de votre réseau sont suffisamment informatifs et convaincants, les internautes qui visitent d'autres sites Web qui affichent le flux RSS de votre réseau peuvent cliquer sur les titres ...

Comment utiliser le mur de commentaires de Ning - mannequins

Comment utiliser le mur de commentaires de Ning - mannequins

Votre page de profil Ning a un mur de commentaires, où autre Les membres de Ning peuvent vous laisser des messages. Le mur de commentaires permet aux membres de vous écrire quelque chose, d'inclure un lien vers un autre site Web, d'intégrer de la vidéo à partir du réseau ou d'autres sites, ou de poster une photo pour que vous puissiez la consulter. N'importe qui dans le réseau peut partir ...