Citation (Fantome @ samedi 24 novembre 2007 à 00h35)

Pour commencer je crois qu'il y a une petit erreur dans le code (ligne 151), tu appelé la fonction $this->existe($object) or elle est déclarée comme suis public function if_exists( $object ).
En Effet ; merci.
J'avais écrit la classe avec des noms de méthodes en français au début. Mais je me suis dit qu'en anglais c'était mieux. D'ou cet oubli.
Citation (Fantome @ samedi 24 novembre 2007 à 00h35)

Une question un peu plus intéressante : y a t-il une raison pour que les valeur par défaut de clés soit différentes entre get_object( $key = 0 ) et delete( $key = NULL ) ?
Bah ; je m'étais dit que :
- lors de la selection d'un élément de la collection à un indice donnée ; prendre le premier ou le dernier indice par défaut était logique. Et comme prendre le premier était plus facile à utiliser ...
Citation (Fantome @ samedi 24 novembre 2007 à 00h35)

Lors de l'utilisation de la fonction get_key( $object ) il est impossible faire la différence entre l'objet trouvé à l'index 0 et l'objet non trouvé. Je pense qu'il serait plus judicieux de remplacer le 0 (dans $result = 0;) par une valeur qui ne peut correspondre à une clé du tableau, exemple : -1 ou NULL.
Voilà un cas auquel je n'avais pas pensé. Merci de ta remarque ; je vais trouvé un moyen de retourner ce type d'infos.
Citation (Fantome @ samedi 24 novembre 2007 à 00h35)

Dans la fonction get_range($low = 0, $high = 0, $step = 1) il serait préférable de faire les test sur les paramètres fournis : valeur entière, >=0, <count().
Idem, excellente remarque aussi. T'est génial ... un vrai bonne critique

Citation (Fantome @ samedi 24 novembre 2007 à 00h35)

Pour ce qui est de la gestion des erreur l'ajout de code d'erreur dans le retour pourrait permettre de facilité sont utilisation, surtout lors des phases de debuguage.
En plus de ces codes d'erreurs une méthode renvoyant un message (descripteur de l'erreur) surtout en PHP ou le typage est implicite. Je pense notamment, que lors de test de type pour l'ajout d'objets, il peut être intéressant de donnée le type attendu et le type reçu.
J'avais pensé à utiliser les exceptions pour gérer les erreurs les moins critique ; et trigger_error() pour les plus critiques. Mais les exceptions me faut tout aussi peut qu'elles ne m'attirent. J'ai toujours peur de ralentir mes scripts en les utilisants (depuis que j'ai lu un bout d'article disant qu'elles étaient a utiliser avec des pincettes ...). T'en pense quoi toi ?
Citation (Fantome @ samedi 24 novembre 2007 à 00h35)

Au niveau de l'ajout de fonctionnalité, je pensé à un équivalent de array_map(), qui retournerai un tableau des résultats de l'appel d'une méthode de MyClass sur chacun des objets.
C'est a dire ; une méthode permettant d'effectuer des opérations en cascades sur les objets de ma collection ?
Citation (Fantome @ samedi 24 novembre 2007 à 00h35)

Comme évoqué dans le sujet [POO] Liste d'objets (sur developpez.com), des itérateurs peuvent être ajouté (ex: first, prev, next, last), même si l'intérêt reste limité étant donné que nos clés sont des entiers consécutifs.
Urg ?
C'est toi le gentil développeur de developpez.net qui a répondu a mes questions ?
Incroyable ... Mais je ne suis tranquille nulle part. Les titaxiens sont partout !