A noter que quelqu'un en a fait une version thread-safe dans Boost.Vault :
http://www.comedi.org/projects/threa...tml/index.html
Version imprimable
A noter que quelqu'un en a fait une version thread-safe dans Boost.Vault :
http://www.comedi.org/projects/threa...tml/index.html
STL,
Puis TAO, xerces...
P'tite question, quelqu'un a une idée des différences de perf. et d'utilisation de l'api entre QT et wxWidget?
J'en profite pour demander quelle lib utilisez-vous pour les threads (en multi-os et free) ? J'ai référencé :
* boost.thread
* ptypes
* wxWidgets
* TBB (d'intel)
Les autres projets que j'ai trouvé sont soit mort (plus d'activité de codage depuis 3/4 ans), soit non multiplaforme (linux,win32,osx)...
@j-saturne: tu as légèrement manqué ACE l'ancêtre-enclume qui vient avec plein de papiers de référence sur la question -- en fait, tous les ORB(-like => voir ICE aussi) vont répondre à la question. Et Qt qui a rejoint plus sérieusement la partie (ACE n'est plus la seule à proposer les future; Qt et boost viennent de s'y mettre). Et C++0x va également amener son lot de fonctionnalités orientées MT.
Qt ( free en version OpenSource )
http://qt.developpez.com/doc/4.4/threads/
En tout cas ça me rassure, je vois que je ne suis pas le seul à utiliser wxWidgets, il y a quant même pas mal de personnes ici aussi.
J'avoue que par moment je doute face à la monter des utilisateurs Qt. Mais bon... je n'ai rien à repprocher à wx pour le moment, à part le manque de disponibilité d'exemples de codes.
Mais sinon le reste (licences, facilité de dev, portabilité etc.) me convient largement.
Pour moi ce sera MFC qui permet d'être proche du système tout en simplifiant considérablement le code.
MFC ??
Il existe encore des personnes qui utilsent ca pour de nouveaux projets ?
pour moi c'est Qt puis Boost
Et oui, et certainement beaucoup, Depuis début 2007 j'ai fais 3 projets d'IHM avec des MFC: 2 pour la SAGEM et 1 pour Thales. Et celui de Thales n'est pas un petit. Il y a même des boites qui bossent encore avec Visual Studio 6 .:yaisse2: Les raisons étant l'ancienneté de projets trop complexe à migrer, la non envie d'acheter de nouvelles licences, les compétences et habitudes...
Sinon pour répondre à la question, moi aussi je dis que la STL est l'ami du développeur C++. Sinon les autres que j'utilise dépendent des projets: MFC, ...
Bonjour à tous, pour ma part, et à usage personnel (pour le boulot c'est Java donc bon ...) :
La stl (bien que je ne l'utilise que de façon superflue pour le moment)
GUI : wxWidgets (testé Qtmais je préfère l'open-source "pas de restriction d'uilisation en fonction de la license" :mrgreen:)
Graphique : SFML (SDL auparavent) et OpenGL bien sûr
Son : OpenAL
Pour ce qui est du réseau, généralement des dérivées des précédentes ...
Inutile de préciser dans quel domaine :mouarf:
En effet, navré pour ce lapsus, j'entendais le totalement gratuit (y compris à utilisation commerciale :))
Encore navré :oops:
A moins que je ne me trompe, on ne peut pas utiliser Qt gratuitement à une fin commerciale. Si oui, dans ce cas tenez moi au courant parceque ça m'intéresse ...
Si tu fournis les sources de ton application commerciale, si.
Oki, c'est donc ça :aie:
Bon, ça change tout dans ce cas, finalement je devrais peut-être m'attardé un peu plus sur les licenses ... ça ne me fera pas de mal :lol:
Mais si on fournit les sources... elle n'est plus commerciale son application enfin!
Les seules stratégies commerciales utilisant de l'open-source que je connaisse se basent soient sur des services annexes (ex: PostgreSql et Firebird qui sont en LGPL mais dans les développeurs vendent du support) soit sur des composants logiciels qui n'ont d'utilités que combinés à d'autres programmes, ce qui oblige les développeurs de ces autres programmes à payer pour les droits de redistribution (n'importe quelle biblio comme Qt ou des cas particuliers comme MySql).
Des programmes utilisables en l'état qui soient à la fois payants (pour toute utilisation) et open-sources je n'en ai jamais vu, et ça me semblerait un peu paradoxal :S puisque ça reviendrait à filer un crack en kit en même temps que l'applic.
Ca rentre dans la catégorie services annexes: packaging + documentation + support (surtout le support, quand une entreprise décide de payer pour du nunux c'est uniquement pour pouvoir blâmer ceux qui en sont responsables en cas de plantage d'un serveur de prod :D)
zais_ethael> Oui, j'ai essayé moi même de chercher un moyen de développer un jeu open source mais en ayant un modèle économique viable. Comme a priori il n'y a que les services qui marcheraient comme tu dis, alors ça deviens vite impossible avec le développement d'un jeu qui à la base est déjà super cher au moins en temps, si en plus faut ajouter un moyen de faire du service dessus, on se retrouve vite avec le cas des mmog. Dans tous les cas ça reviens a mettre en place une plateforme ou une lib.
zais_ethael >
Ca montre qu'on peut faire du pognon avec une application open source.
Si tu ne fournis aucune doc avec ton appli, tu peux très bien te permettre, en pratique, de vendre ton appli. En autorisant la libre distribution et exploitation du code, pour la forme...
Si tu créés un progiciel, l'entreprise peut te payer pour le customiser par exemple.Citation:
Des programmes utilisables en l'état qui soient à la fois payants (pour toute utilisation) et open-sources je n'en ai jamais vu, et ça me semblerait un peu paradoxal :S puisque ça reviendrait à filer un crack en kit en même temps que l'applic.
Encore une fois c'est un service annexe.
Le fait est que c'est déjà assez difficile de gagner sa vie dans ce milieu comme dans un autre, si en plus on devait se voir dicter sa tactique marketing par Trolltech mais où va-t-on?
Si vous décidez de mettre votre projet sous licence GPL faites le à dessein, pour toucher un public cible ou, très très éventuellement, dans le cadre d'une stratégie marketing, pas parce que "les licences Qt c'est trop cher".
Et puis bon, vous pourrez dire ce que vous voudrez, citer n'importe quel auteur utopiste ayant lancé des idées sur le sujet, mettre du code sous une licence open-source est avant tout une démarche bénévole. Si vous ne me croyez pas allez donc demander à n'importe quel membre du forum maintenant un projet ce type (beaucoup l'indiquent dans leur signature) combien ça lui rapporte par ans, on va rire :D
Personnellement j'utilise pour tout mes projets en C++ la stl et boost pour combler les lacunes de celle-ci.
Quand je veux une interface graphique, j'utilise Gtkmm qui a l'avantage d'être compatible avec les conteneurs de la stl et d'utiliser l'excellent sigc++ pour les signaux.
J'utilise quelque fois Qt4, mais il est plus difficile de l'utiliser avec la stl. L'avantage de Qt étant qu'il intègre beaucoup plus qu'un toolkit.
Pour les graphismes, SDL, je n'ai que testé rapidement OpenGL.
- wxWidget pour le graphique, le design est celui de l'OS puisqu'elle ne fait qu'encapsuler l'API de ce dernier (avec le gros avantage de la licence par rapport à Qt),
- STL pour tout ce qui conteneur (vector, list, ...) et les string,
- TinyXML pour le XML (mille fois plus simple, DOM simplifié, mais aussi moins puissant que la libxml2, pas de SAX par exemple), idéal pour de petits fichiers,
- Boost me semble intéressante mais je n'ai jamais eu à l'utiliser,
- gSOAP, même si c'est plus un générateur de code, pour le SOAP.
Merci pour ce topic, je vais jeter un oeil à MOCKPP, TBB, POCO.
Sans hésiter, je choisi Qt ! (en fait, il y a QUE cette librairie que je sais à peu près bien manier...)
Mmmh... Moi, je dirais boost bien sûr, wxWidget pour les interfaces graphiques, FMOD pour le son et OpenGL pour la 3D ^^
je suis un débutant en c++ j'utilise Qt et je la trouve très pratique!
Boost et S(T)L en majorite.
Maintenant des qu'une application se compose de pas mal de modules, Qt est de loin la bibliotheque que je prefere.
Q[Tcp/Udp][Socket/Server]
QThread
QSqlDatabase
QXml/QDom
QHttp
...
Elle est vraiment bien faite. Et la documentation tres bien fournie.
(Sans compter que la souplesse pour la creation de GUI est totale).
Soit dit en passant, la version 4.5 de Qt est maintenant disponible en Release Candidate, ça sent la release qui va cartonner avec sa nouvelle licence et son IDE ;)
A mon avis, ça va donner un sacré coup à l'utilisation de wxWidgets, qui risque d'être revue à la baisse...
Sinon, Luc (Hermitte) et moi en avons parlé quelques fois, mais connaissez-vous Adobe Source Libraries ?
Si vous voulez découvrir, c'est par ici : http://stlab.adobe.com/
(STL evidemment), Boost, log4cxx, GSL, Xerces(-C++) principalement.
je suis souvent assez frustré de la doc de boost (très inégales selon les libs); ne parlons pas de log4cxx, qui se confine au minimum... pour le reste...
Microsoft Foundation Classes MFC 2008 (Features Pack)
Ma bibliothèque préférée pour les interfaces graphiques Windows GUI
Active Template Library (ATL) pour les composants COM.
Moi j'utilise Qt ! Qui est donc comme le dit Alp est passé en RC. Même si je n'ai pas vraimet tout compris. J'ai entendu parler de devoir faire des linkage dynamiques ou je sais pas trop quoi... En bref, j'ai survolé et rien compris ! :p Si quelqu'un pourrai m'éclairer ! :p
Merci !
Un début ici.
Après, toutes les bonnes volontés sont les bienvenues :mrgreen:
fmod(pour le son) et devil(pour l'image).
C'est vrai que fmod est une lib propriétaire, mais si le prog distribué n'est pas à but commercial, on peut l'utiliser gratuitement.Citation:
C'est une bibliothèque propriétaire qui gère le son "3D". Rien d'indispensable.
En provenance du site officiel de fmod:
"If your product is not intended for commercial gain and does not include the FMOD library for resale, license or other commercial distribution, then use of FMOD is free. Yes that's right, free from license fees!."
QT 4.5
http://www.qtsoftware.com/about/news/we-have-a-winner:salut:
Quelle est selon vous LA bibliothèque à utiliser pour la programmation réseau en C++ à l'heure actuel, si vous deviez en choisir une ?