compactage mémoire + solution élégante en C++
Je demande à voir.
compactage mémoire + solution élégante en C++
Je demande à voir.
je me trompe ou cette discussion vire au troll ?![]()
Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour)
N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML
Non pas tous. Typiquement la gestion de la fragmentation ne me semble pas avoir de solution élégante en C++ (si ce n'est de libérer dans un autre bien précis, et encore).
En outre ce n'est pas aussi évident que cela qu'un Garbage Collector soit inutile en C++[1]. A ma connaissance, la possibilité d'en intégrer un a été abordée et le point n'est pas tranché.
En outre il existe déjà des Garbage Collector en C++ de façon non standard.
Mais ce ne sont pas des "services communs" qu'offre les objets, seulement des "détails d'implémentation".
En outre:
[a] et [c] : justement je vois un problème à avoir ceci dans un super objet de base. Je ne souhaite pas nécessairement que tous mes objets soient duplicable ni comparable (cf sémantique de valeur/d'entité).
[b] et [d] : Juste quelques remarques:
- L'utilisation d'un super objet pour permettre la réflexion et la libération mémoire est un choix d'implémentation possible, pas forcément le seul.
- Ces deux caractèristiques n'ont rien en commun. Je ne vois pas pourquoi un même super objet aurait ces deux responsabilités.
- Enfin cela me semble être de l'héritage pour réutilisation de code, pas un hériotage au sens LSP du terme. Donc héritage privé et non public.
[1] A titre personnel, si cela ne remet pas en question les mécanismes existant et s'il est suffisament flexible, je ne suis pas du tout contre le fait d'avoir un garbage collector.
Sinon il y a déjà eu le débat sur le super objet, il était bien nourri et n'avait finalement pas été tranché, les deux camps du pour et du contre existants tout deux.
Je ne pense pas. En tout cas grâce à vous j'ai appris plein de trucs. La tournure qu'a pris cette discussion est super importante puisque tout est lié! Ce qui m'a obligé de me projeter beaucoup plus loin dans la réflexion et surtout dans la documentation pour essayer de comprendre convenablement ce que chacun a avancé. C'est plutôt intéressant!je me trompe ou cette discussion vire au troll ?
Je me rend compte que de l'écart du premier message que j'ai posté par rapport à la réalité et l'expérience de chacun. Tout cela est un catalyseur nous obligeant à lire, à nous documenter et surtout à bien réfléchir.
Bravo
Merci à vous
Peut être que ceci pourrait t'intéresser dans ta réflexion (c'est le cas de le dire).
je dirais plutôt en quelque chose de stérile car basé exclusivement sur des "lieux communs" non justifiés...
Ceci dit, la remarque de wafiwafi est également correcte: la solution au problème de l'héritage en losange ne peut pas être résumée en deux phrases et justifie une réflexion en profondeur, surtout avec un langage aussi fourni que C++...
D'autres langages suivent d'autres philosophies et apportent (ou non) d'autres solutions à ce problème, mais cela fait partie des conséquences d'un choix fait à la base![]()
A méditer: La solution la plus simple est toujours la moins compliquée
Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 février 2014
mon tout nouveau blog
Partager