6
votes

Bibliothèque C ++ avec une API de type Java

En espérant que n'importe qui ici connaît une bonne chose: je cherche une bibliothèque (libre à utiliser) C ++ avec une hiérarchie de classe et des méthodes qui ressemblent à l'API Java, avec au moins la partie I / S et réseau de réseautage si elle, Traitement spécifique HTTP.

Je travaille principalement avec C & Java, mais pour ce projet particulier C ++ est recommandé, j'ai donc pensé à adopter un bon ensemble de bibliothèques C ++ sans faire face à une courbe d'apprentissage escarpée.

Merci d'avance pour toute recommandation.


0 commentaires

5 Réponses :


5
votes

Avez-vous regardé le boost bibliothèques?

  • boost. iOSTreams fournit un cadre Pour définir des flux, des tampons de flux et des filtres d'E / S.
  • ASIO - réseau portable, y compris les sockets, Minômes, résolution de nom d'hôte et socket iostreams.
  • Beaucoup Autres ....

    Les bibliothèques de boost fournissent des capacités similaires par rapport à l'API Java, mais elles ont beaucoup "l'aspect et la sensation" - de manière appropriée - comme une bibliothèque C ++.


2 commentaires

Merci. J'ai vérifié Boost: Asio, mais il gère TCP, ce qui signifie que si je dois gérer HTTP avec des sessions / des cookies et des trucs, je vais devoir le mettre en œuvre moi-même. Je me demande si existe-t-il une nouvelle proposition exclusivement pour HTTP dans les travaux ...


Le projet CPP-NetLib - Sourceforge.net/Projects/cpp-netlib - travaille sur http Prise en charge du client pour l'inclusion à Boost.



0
votes

Une bibliothèque C ++ ressemblait à un Java One serait une mauvaise bibliothèque, imho. Les deux langues sont si différentes que ce qui est un bon design pour l'une, une mauvaise conception sera presque inévitablement pour l'autre.


1 commentaires

Une bibliothèque C ++ qui a les mêmes interfaces qu'une bibliothèque Java ne serait pas une mauvaise conception imo. .NET a pu fournir les mêmes interfaces pour différentes langues très différentes et ses bibliothèques C ++ sont plutôt bonnes.



5
votes

qt est iMho très java comme. C'est à dire. Ils préfèrent itérateurs de style Java sur les stores. QT inclut la mise en réseau ( Exemples ) et beaucoup d'autres choses (comme script via JavaScript) < / p>


2 commentaires

Qt. Je suis tenté, mais la GPL est hors de question, c'est-à-dire qu'il sera rejeté par la direction.


Le lien Troll Tech est mort



2
votes

Il existe également la possibilité d'utiliser quelque chose comme POCO , qui est légèrement plus simple que d'utiliser quelque chose comme Boost, tandis que Encore une plate-forme transversale.

tandis que la seule fois où j'ai utilisé HTTP à Java était il y a longtemps, l'interface de la bibliothèque Poco semble assez simple à utiliser. Il donne un exemple d'utilisation de base FTP A quelque chose comme ceci: xxx


2 commentaires

Je le vérifiais auparavant, mais j'aimerais avoir plus de commentaires des gens ici. Merci.


@Rafael, Poco est une excellente bibliothèque qui s'appuie sur la STL, suit toutes les idiomes C ++, et pourtant, semble être de type Java. Je pense donc que c'est un excellent choix pour vous.



0
votes

Vous pouvez regarder Mindroide , qui est principalement orienté vers la programmation embourde: < / p>

Mindroid est un cadre d'application (avec la mise au point sur la messagerie et la concurrence) qui vous permet de créer des applications à l'aide d'un ensemble de composants réutilisables - tout comme Android. Le nom Mindroid a deux significations différentes. D'une part MidroidID, c'est un ensemble minimal de classes androides principales et, d'autre part, ces classes forment également l'esprit d'Android (au moins à mon avis).


0 commentaires