NSList et NSQueue ?
Chacha
Membre
Salut,
Je n'ai pas bien su où chercher sur le forum pour être sûr que ce n'est pas une question classique, et je n'ai rien trouvé.
À votre avis, pourquoi n'y a-t-il pas de classe NSList et/ou NSQueue en Cocoa ? Si j'ai besoin d'un container ordonné avec accès en O(1) en tête et en queue, je fais quoi ?
Le refaire soi-même, d'accord, mais je voudrais être sûr qu'il n'y a pas une bonne raison.
+
Chacha
Je n'ai pas bien su où chercher sur le forum pour être sûr que ce n'est pas une question classique, et je n'ai rien trouvé.
À votre avis, pourquoi n'y a-t-il pas de classe NSList et/ou NSQueue en Cocoa ? Si j'ai besoin d'un container ordonné avec accès en O(1) en tête et en queue, je fais quoi ?
Le refaire soi-même, d'accord, mais je voudrais être sûr qu'il n'y a pas une bonne raison.
+
Chacha
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Es tu sûr que le NSMutableArray n'est pas en fait une liste ?
Certes, mais comme on ne connaà®t pas l'implémentation, on ne peut être sûr de rien... Deftones_chrix a peut-être raison, c'est peut-être une liste... mais ce n'est pas dit clairement dans la doc.
Il y a eu cette discussion il y a longtemps sur la mailing list Omnigroup qui peut t'intéresser :
http://cocoa.mamasam.com/MACOSXDEV/2001/07/1/9023.php
Ok, je suis allé voir, mais c'est pitoyable. Les gens ne savent rien mais ils veulent montrer qu'ils ont raison. Pas un n'exhibe une once de preuve que le NSMutableArray est effectivement (ou non) une bonne solution en termes de performances dans le cas de petites listes, de grandes listes, ou en moyenne. Par contre, des "moi je fais comme ça, donc c'est la bonne solution", ils savent le dire.
Pardon, je me suis un peu énervé.
En fait, ce qui me gêne, c'est l'absence de précisions dans la doc de Cocoa, car c'est là qu'on aurait la bonne parole. J'irai traà®ner sur les mailings lists de developer.apple.com, quand j'aurai un moment...
+
Chacha
http://lists.apple.com/archives/cocoa-dev/2004/Jul/msg01740.html
Je n'ai pas encore tout lu du thread mais on dirait qu'officiellement, il n'y pas de "NSList".
Donc soit il faut faire son implémentation, soit utiliser les NSArray, NSEnumerator, NSSet & Co