Vidéo: 25 Fonctions cachées et Astuces sur iOS 11 ! 2025
Les frameworks pour applications iOS implémentent souvent une technique appelée inversion de contrôle. Comme vous le savez déjà , un framework logiciel est un ensemble de composants contenant du code commun qui fournit des fonctionnalités génériques. Cette fonctionnalité générique peut être remplacée sélectivement ou spécialisée par le code utilisateur. De cette manière, le cadre peut être personnalisé en fournissant une fonctionnalité spécifique et un flux de contrôle également appelé inversion de contrôle.
L'inversion du contrôle signifie que le flux de contrôle du programme - le fonctionnement du programme - n'est pas dicté par l'utilisateur du framework mais par le framework lui-même, comme comportement par défaut. Ce comportement par défaut est étendu ou modifié par le code fourni par l'utilisateur sous la forme de classes qui étendent les classes de base du framework (qui sont généralement des classes abstraites).
Ces classes fournies par l'utilisateur remplacent certaines méthodes ou fournissent des implémentations de méthodes virtuelles. Les classes de l'utilisateur peuvent également implémenter des interfaces spécifiques qui sont ensuite transmises et invoquées par le framework. Inversion de contrôle distingue les frameworks des bibliothèques logicielles qui fournissent des capacités de calcul que votre application peut invoquer, telles que les routines de manipulation de chaînes fournies par java. paquet de lang.
iOS est, en fait, un framework et il fournit un ensemble de classes de base que vous étendez avec vos propres classes et code et une séquence globale de calcul dans laquelle vous branchez ces classes et votre code. Séparer le modèle, les vues et le contrôleur produit des composants avec une cohésion plus élevée, chaque composant étant responsable d'un ensemble de responsabilités liées.
De même, pour que l'inversion du contrôle fonctionne bien, de nombreux types de composants réutilisables doivent pouvoir se greffer sur la séquence globale de calcul. Plus ces différents composants ont besoin de connaître le cadre, et inversement, plus il devient difficile de brancher un ensemble varié de composants. Par conséquent, le couplage lâche est également essentiel dans les cadres.
