Bonsoir à tous.
Voilà cela fait quelques années maintenant que je m'attarde sur le php, et depuis quelques mois je m'intéresse de près à sa POO. Théoriquement parlant j'ai, par le biais de mes professeurs, bien assimilé le concept de POO. Je fais également du C# et je commence à m'intéresser à Java. Voilà pour la petite histoire, non pas pour m'étaler sur mes (maigres) compétences, mais pour que vous puissiez situer à peu près mon niveau.
Mon problème est en réalité une succession d'interrogations. À chaque nouveau projet j'essaie de revoir et de corriger ce qui ne va pas dans ma façon de coder. Ici, vous l'aurez compris, cela concerne les collections.
Imaginons par exemple une classe "Personnes", et une classe "Groupe", censée être une collection de Personnes. J'ai lu pas mal de documentations à ce sujet, et même si elles sont en général bien détaillées, elles occultent des faits qui semblent être des évidences pour le lecteur type, mais pas pour moi...
Tout d'abord, quelle structure utiliser ?
J'utilisais des arrays jusqu'à maintenant, mais aujourd'hui je ne sais plus s'il vaut mieux garder cette structure, ou bien utiliser des SplObjectStorage, ou encore des ArrayObject.
Tout cela sachant que j'aimerais disposer d'une méthode qui me permettrait de retourner un objet (ou l'indice de l'objet) dont je connais seulement la valeur d'un seul attribut (Valeur unique pour chaque objet, bien entendu). Jusqu'à présent j'effectuais ce traitement avec une boucle while vérifiant chaque objet du tableau. Mais avec le recul, je n'ai VRAIMENT pas l'impression que ce soit la meilleure solution. Il doit certainement y avoir plus propre et plus performant...
De plus, j'ai lu énormément de choses concernant les itérateurs, que ce soit en Php comme en .net.
Je pense avoir plus ou moins appréhendé le système, mais j'ai du mal à voir l'intéret (Je suppose qu'il y en a un, je dois juste être à côté de la plaque). Avoir la main sur le comportement du Foreach, je comprends bien, mais j'ai énormément de mal à voir l'intérêt sans un exemple concret...
Voilà, connaître les réponses à ces questions m'aiderait beaucoup à y voir plus clair... Je vous remercie sincèrement d'avoir lu mon post, ainsi que de l'aide que vous pourrez éventuellement m'apporter, pour les plus altruistes.
Bonne soirée à tous.
Partager