Plusieurs methodes ou une seule "grosse" methode ?
Posté : 15 janv. 2009, 23:12
Bonjour,
Je me pose une question, étant confronté à ce problème.
J'étais en train de créer une méthode pour récupérer un listing depuis une base de donné que j'ai nommé getAll()
Seulement, obtenir un listing complet si il y a beaucoup d'entrées, ça risque de ramer dur... surtout si je récupère tout le contenu pour retourner une collection d'objets.
Je me disais donc, on va laisser la possibilité de paramétrer le LIMIT de la requête, ce qui permettra de gérer la pagination.
Mais cela m'amène maintenant à me dire que je pourrais avoir besoin de paramétrer la clause de la requête, par exemple n'avoir que les résultat pour une date donnée. Mais si je résonne comme ça je vais vite avoir un gros tas de paramètres dans ma méthode et le code va devenir complexe.
L'autre solution serait de faire autant de méthodes qu'il pourrais y avoir de possibilités, soit beaucoup de méthodes...
Exemple
- getAll()
- getLast(0, $limit)
- getWhereDate($date)
- getWhereMonth($month)
etc...
Voilà,
Je suis un peu pommé sur la méthode à employer...
Je me pose une question, étant confronté à ce problème.
J'étais en train de créer une méthode pour récupérer un listing depuis une base de donné que j'ai nommé getAll()
Seulement, obtenir un listing complet si il y a beaucoup d'entrées, ça risque de ramer dur... surtout si je récupère tout le contenu pour retourner une collection d'objets.
Je me disais donc, on va laisser la possibilité de paramétrer le LIMIT de la requête, ce qui permettra de gérer la pagination.
Mais cela m'amène maintenant à me dire que je pourrais avoir besoin de paramétrer la clause de la requête, par exemple n'avoir que les résultat pour une date donnée. Mais si je résonne comme ça je vais vite avoir un gros tas de paramètres dans ma méthode et le code va devenir complexe.
L'autre solution serait de faire autant de méthodes qu'il pourrais y avoir de possibilités, soit beaucoup de méthodes...
Exemple
- getAll()
- getLast(0, $limit)
- getWhereDate($date)
- getWhereMonth($month)
etc...
Voilà,
Je suis un peu pommé sur la méthode à employer...