J'ai jeté un coup d'oeil au code (très vite) et voici quelques retours:
JAMAIS de using namespace xxx dans un header, JAMAIS, JAMAIS! Ça casse l'intérêt principal d'avoir des namespace
L'encapsulation est brisée un peu partout via des getter (non constant) renvoyant des pointers sur des choses internes de tes classes. À quoi ça sert de faire de l'encapsulation si tu renvoie un pointeur nue que n'importe qui peut modifier et briser ainsi tous les invariants ? Pour la grande majorité, ces getters devraient être marqués const.
De manière plus générale, ton API manque beaucoup de modifiers const.
Les pointeurs nus, c'est souvent mal. On préfère utiliser au maximum les références quand c'est possible, ou un pointeur intelligent à défaut.
Il faut utiliser les listes d'initialisation dans les constructeurs
Les objets "un peu gros" doivent (en général) être passé par référence constante plutôt que par valeur
Quand tu manipule des pointeurs, gare aux constructeurs par copie, et n'oublie pas d'avoir un destructeur qui libère correctement les ressources (bon évidemment pour l'instant, il n'y a quasiment que des singletons).
Beaucoup d'autres choses à dire encore, mais il faudrait que je regarde de plus prêt.
# Très rapide review
Posté par zul . En réponse au journal Petit Framework de jeu 2d en C++. Évalué à 10.
J'ai jeté un coup d'oeil au code (très vite) et voici quelques retours:
Beaucoup d'autres choses à dire encore, mais il faudrait que je regarde de plus prêt.