Todo

MPsyco

As always:

  • DOCS!!!
  • Groups the docs.. that makes it clearer
  • Better Exception handling...
  • Separate what can be separated in .h and .cpp
  • Tests

First of all:

  • Change every instance of the old/temp name "cpp"...
  • Then put everything in the namespace gpal
    Done.

Then:

  • Change the way the resources are managed, it looked like a good idea at the first place, but I have to change it before it becomes a nightmare.
  • Add some logging (for debugging) utility.
  • put the namespace "type" outside of "core"
  • Ajouter un type de memoryManager entre BasicMM et (LinkManager, ObjectManager; au fait, la différence entre les deux est-elle toujours requise?)
  • Ajouter une méthode kill() à IMemoryManager qui appel free() et puis fait son salle boulot...
  • Considérer d'implémenter le "command design pattern" (avec quelque twist bien sur) afin de gérer les opérations de base...

  • Opération de base

    • delete
    • copy (partial/complete)
    • move (from an memoryManager to another)
    • unlink
    • ilink::disconnect??
    • ~connect
    • MulitiLink respect the order in which object had been linked, so it can be used for holding some ordered data and it could be really usefull to add some ordering method or std::vetor-like method
  • Implémenter correctement un méchanisme afin de retirer un objet sans problème (genre fuite de mémoire ou suppression double).

    • Essayer de vérifier s'il fonctionne correctement
  • Rendre les IntReference "Universelle" et "customizable" (c'est presque déjà le cas

  • Ajouter le caractère "unique" aux IObject afin qu'ils ne soient pas copier lors de l'appel à strongCopy

  • Ajouter le concept de classe

    • match()
    • addRequirement()
    • addOptional()
    • bool& strict()
  • J'étais fatigué lorsque j'ai mit en place le système de référence, alors je ne suis pas sur si j'ais fait quelque chode d'inutile...

  • La documentation des classes de gestion de la mémoire ne doit plus être à jour (à vérifier).
  • Ajouter à presque tout typeName() et typeId() et ajouter les choses correspondantes dans le fichier Types.h.
  • Serialization...
  • Add (or make inaccessible) the copy operators for the objects containing pointers.
  • Mettre en place un méchanisme pour que les modification soit propagé

    • Le tester
  • Peut-être faire deux descendant à IObject: terminal et nonTerminal, pcq terminal ne px pas besoin de commitModification(pLink)

    • Mais ce serait BEAUCOUP de modification pour simplement enlever une méthode à quelque classes... useless.
  • Addthe classes/Ajouter les classes

    • StringValue
    • FloatValue

Related

Wiki: Home

MongoDB Logo MongoDB