0

Je développe une bibliothèque à utiliser par moi-même et par des tiers. Pour initialiser cette bibliothèque, je devrai passer un assez grand nombre de paramètres obligatoires. Je ne sais pas combien en tout, mais je suis déjà à 9.Bibliothèque avec un grand nombre de paramètres

J'essaie de déterminer quelle est la meilleure façon de transmettre ces paramètres.

1) Passez chaque paramètre, un par un. Cela deviendra lourd et sujet aux erreurs.

2) Rendre disponible une constante par paramètre et rendre la bibliothèque nécessitant une table de hachage, chaque constante étant la clé de la valeur.

3) Créez un objet modèle avec tous les champs et mettez-le à la disposition de l'utilisateur. Les numéros 2 et 3 semblent être les meilleurs, même si je ne suis pas sûr d'en avoir vu aucun ailleurs.

+0

Vous pouvez utiliser une structure. Cependant, dans ARC, vous ne pouvez pas utiliser les pointeurs d'objet comme champs de structure ... – LuisABOL

+0

Pas tellement de différence entre une structure et une simple classe Objective-C. Et la classe est plus facile à gérer, non? – ruipacheco

+0

Oui, dans ce cas, il n'y a pas beaucoup de différence entre une classe struct et une classe ObjC, malgré l'espace mémoire supplémentaire requis par la classe pour la comparer à une structure. Mais ce n'est pas une situation critique, donc la surcharge n'est pas un problème ici et un objet le ferait bien, sans parler du problème d'utilisation de pointeurs vers des objets dans des structures, sous ARC, si c'est le cas ... – LuisABOL

Répondre

1

Votre 3. semble prometteur.

Le passage d'un objet avec toutes les valeurs 9 ou même plus sera lisible.

De même, si vous avez besoin d'envoyer des types de valeurs similaires, vous pouvez envoyer un tableau ou un dictionnaire.

+0

doivent être un dictionnaire, car les valeurs doivent être étiquetées. – ruipacheco

Questions connexes