Depuis plusieurs jours, je regarde les libs de boost pour les utiliser a la place de Qt lorsqu'elle sont communes.

J'ai posté un message sur les signals et sur unicode pour le filesystem,
ca n'a pas passionné les foules je dois dire.

Ce forum en general m'a progressivement poussé gentiment à regarder du coté de boost et à l'utiliser à la place de Qt quand c'est possible. Alors voici les conclusions que j'ai pu tirer de mes nombreuses lectures et comparaisons. Je vous invite a en faire une critique constructive.

std::string vs QString:
QString est vraiment agreable a utiliser, il manque pas mal de fonction a std::string. Le point le plus important etant l'unicode, auquel wstring ne resoud rien dans le cadre multi plateforme (wchar_t pas portable du tout)

boost::filesystem vs QFile/QDir:
boost est tres agreable a utiliser, mais il manque cruellement l'unicode que je crois necessaire de plus en plus, a commencer par windows.
A ce moment je me suis demandé pourquoi boost n'avait pas de classe boost::string pour gerer ces problemes...

boost::thread vs QThread:
sans hesiter QThread et ses primitives de synchro, plus lisible et plus documenté.

boost::signal vs Qt/Signal:
Qt/Signal marche entre thread. je trouve aussi plus lisible. Au final c'est plus une question d'etre homogene de choisir Qt/signal. Je me suis beaucoup demandé si dans le model metier on ne devait pas utiliser boost plutot, mais au final il vaut mieux etre homogene et faire le soft de facon homogene pour ne pas avoir deux sources de maintenance.

Philosophiquement, il vaudrait mieux se lier a boost, libre et gratuit, c'est aussi pour ca que je me suis serieusement posé toutes ces questions. Au final Qt est vraiment homogene et productif ce qui me fait pencher du coté de Qt, en me disant que KDE a fait les memes choix...

Reste encore boost:bind, boost::function, boost::smart_pointer qui sont tres bien, que je n'hesiterai pas a utiliser si j'en ai un jour besoin. Pour l'instant j'essaie de me limiter dans les dependances.