Bon puisque-tu réponds dans 2 sous-thread de mon post calomnieux pour les GC, sache que:
1/ mes propos etaient amplifiés par l'envie de faire réagir.
2/ ton post dans ce sous-thread est le premier a parler de malloc() [d'ou free()dans ma réponse] et "d'utiliser l'ordinateur pour les taches répétitives et simples" [d'ou mon "aidé des outils automatiques"]. De plus, désolé de le dire, mais ce post ne reflétait pas vraiment l'expérience d'un développeur confirmé... d'ou mon ton "moqueur".
Je sais pertinament que les GC ne sont pas mauvais en soit. La tendance actuelle a en mettre de partout est sans doute l'origine de mon premier post ...
Quand je fais du développement, c'est plutôt axé système. Petit daemon proprietaire, portage de midleware ... donc beaucoup de C, peu de C++, mais quand même pas mal de lignes dans certains cas... On implémente tous un jour ou l'autre un compteur de références sur une ressource pour savoir si on peut la libérer ou pas [genre lien hard sur les fichiers]. Je voulais attirer l'attention sur le fait que le GC à un cout non négligeable en termes de perf, et que heureusement il y a bien des projets ou l'on peut s'en passer. L'implémentation "forcée" de GC comme dans java me semble:
1/ puissante
2/ dangereuse puisque utilisée même quand pas necessaire.
Quand on lit l'URL que tu as donné dans l'autre sous-thread, on y voit aussi que le type de MS voudrait bien se passer de GC si il pouvait pour son projet...
Maintenant ton exemple en C++:
OK dans ce ca sil y a dilemne, mais es-tu sur que le modele "objet" de ta fenetre est bon ? Pourquoi des pointeurs vers une chaine interne à l'objet devraient-ils être conservés en dehors de l'objet ? Pourquoi l'objet devrait-il etre détruit avant que les traitements s'y rapportant [ceux qui ont besoin de la chaine] soient terminés ? A mon avis, cet exemple montre un problème de design plus profond...
[^] # Re: Comment ça marche ?
Posté par PLuG . En réponse à la dépêche Al Stevens n'aime pas QT. Évalué à 3.
1/ mes propos etaient amplifiés par l'envie de faire réagir.
2/ ton post dans ce sous-thread est le premier a parler de malloc() [d'ou free()dans ma réponse] et "d'utiliser l'ordinateur pour les taches répétitives et simples" [d'ou mon "aidé des outils automatiques"]. De plus, désolé de le dire, mais ce post ne reflétait pas vraiment l'expérience d'un développeur confirmé... d'ou mon ton "moqueur".
Je sais pertinament que les GC ne sont pas mauvais en soit. La tendance actuelle a en mettre de partout est sans doute l'origine de mon premier post ...
Quand je fais du développement, c'est plutôt axé système. Petit daemon proprietaire, portage de midleware ... donc beaucoup de C, peu de C++, mais quand même pas mal de lignes dans certains cas... On implémente tous un jour ou l'autre un compteur de références sur une ressource pour savoir si on peut la libérer ou pas [genre lien hard sur les fichiers]. Je voulais attirer l'attention sur le fait que le GC à un cout non négligeable en termes de perf, et que heureusement il y a bien des projets ou l'on peut s'en passer. L'implémentation "forcée" de GC comme dans java me semble:
1/ puissante
2/ dangereuse puisque utilisée même quand pas necessaire.
Quand on lit l'URL que tu as donné dans l'autre sous-thread, on y voit aussi que le type de MS voudrait bien se passer de GC si il pouvait pour son projet...
Maintenant ton exemple en C++:
OK dans ce ca sil y a dilemne, mais es-tu sur que le modele "objet" de ta fenetre est bon ? Pourquoi des pointeurs vers une chaine interne à l'objet devraient-ils être conservés en dehors de l'objet ? Pourquoi l'objet devrait-il etre détruit avant que les traitements s'y rapportant [ceux qui ont besoin de la chaine] soient terminés ? A mon avis, cet exemple montre un problème de design plus profond...