Je suis globalement d'accord,
Je ne dis pas que l'API doit fournir une classe liste quifaittout, je dis que l'API doit fournir une abstraction, avec plusieurs niveau si nécessaire,
et si l'API propose une implémentation par defaut (GDefaultList), peut etre prendre un truc vaguement générique, facilement changeable.
Ensuite pour avoir des programmes quitorche, c'est encore mieux si l'API a un flag profiling pour voir les statistiques d'utilisations des fonctions, avec des infos utiles (nombre d'elements, .. toussa).
Je pense que les cas ou l'on recherche l'optimisation est bien plus faible que les cas ou on veux juste une liste.
Sinon je suis allé voir la doc de la GLib et les type proposé sont trop spécialisé (i.e il manque le vecteur de java).
Si on veut utiliser la Glib, il n'y a pas vraiment une liste a tout faire avec performances correcte.
Le plus proche est le GArray, mais ca ressemble a un tableau avec du realloc, eventuellement avec de la préalocation,
pas des trucs du genre <truc tres opaque> avec une API type tableau,
par ex partitioner l'espace des index dans un arbre a arité fixe, le tout paramétrable, avec de bon defaut.
Ensuite si on veut s'amuser en C on peut commencer a mettre les donnés de liste dans la structure a stocker, et stocker des offset dans une strucuture de type liste.
[^] # Re: autre optimisation
Posté par ham . En réponse au journal Vous trouvez GNOME lent ?. Évalué à 1.
Je ne dis pas que l'API doit fournir une classe liste quifaittout, je dis que l'API doit fournir une abstraction, avec plusieurs niveau si nécessaire,
et si l'API propose une implémentation par defaut (GDefaultList), peut etre prendre un truc vaguement générique, facilement changeable.
Ensuite pour avoir des programmes quitorche, c'est encore mieux si l'API a un flag profiling pour voir les statistiques d'utilisations des fonctions, avec des infos utiles (nombre d'elements, .. toussa).
Je pense que les cas ou l'on recherche l'optimisation est bien plus faible que les cas ou on veux juste une liste.
Sinon je suis allé voir la doc de la GLib et les type proposé sont trop spécialisé (i.e il manque le vecteur de java).
Si on veut utiliser la Glib, il n'y a pas vraiment une liste a tout faire avec performances correcte.
Le plus proche est le GArray, mais ca ressemble a un tableau avec du realloc, eventuellement avec de la préalocation,
pas des trucs du genre <truc tres opaque> avec une API type tableau,
par ex partitioner l'espace des index dans un arbre a arité fixe, le tout paramétrable, avec de bon defaut.
Ensuite si on veut s'amuser en C on peut commencer a mettre les donnés de liste dans la structure a stocker, et stocker des offset dans une strucuture de type liste.