Bonjour Nal,
Je ne fais plus de C++ depuis longtemps, mais je regarde parfois l'actualité de ce langage.
Sa meilleure bibliothèque est sortie en version 1.75 depuis et propose des nouveautés intéressantes:
Tout d'abord un parseur JSON vraiment simple:
auto george = boost::json::parse( R"( { message: "Monde de merde" } )" );
std::cout << george["message"] << std::endl;
Ensuite un gestionnaire d'erreur qui ressemble un peu à ce que fait Go avec des valeurs de retours multiples.
D'autres libs plus anciennes sont régulièrement mises à jour, par exemple :
- beast pour faire des clients et serveurs http mieux qu'en Node.js ;
- smart_ptr pour être plus memory safe que Rust tout en gardant un langage plus simple et portable;
- tribool pour les non binaires, les centristes et les indécis ;
- et bien plus encore.
# Plus simple
Posté par Axioplase ıɥs∀ (site web personnel) . Évalué à 10.
Langage plus simple. C++.
J'ai ri.
[^] # Re: Plus simple
Posté par Colin Pitrat (site web personnel) . Évalué à 10.
Plus memory safe, c'est aussi un bel appel au troll !
[^] # Re: Plus simple
Posté par bbo . Évalué à 5.
Pourtant, on n'est pas encore vendredi. N'aurions-nous pas à faire à une moule précoce ?
# Boost ? À réfléchir avant d'utiliser
Posté par David Demelier (site web personnel) . Évalué à 4.
Bof, comme d'habitude il est atteint de la surconception connu de chez Boost. L'API de nlohmann-json est bien plus facile. En revanche son implémentation et sa quantité de fonctionnalités annexe est similaire à une centrale à charbon, ce n'est plus un parseur JSON mais un véritable framework. Dommage.
Désolé mais ce n'est pas le cas. J'ai déjà essayé et c'est tellement bas niveau que tu perds plus de temps à écrire le code de gestion HTTP que de coder ton application. Node.js n'est pas mieux, mais Beast n'est clairement pas mieux que Node.js non plus. En plus, son auteur est particulièrement égocentrique.
Les smart pointers existent en standard depuis C++11, aucunement besoin de Boost.
git is great because linus did it, mercurial is better because he didn't
[^] # Re: Boost ? À réfléchir avant d'utiliser
Posté par Colin Pitrat (site web personnel) . Évalué à 10.
Hmm, tu peux développer le égocentrique ? Est ce que c'est le "It is, after all, the only thing that is asked in return for free software." ? Parce que je vois rien de bien égocentrique dans quoi que ce soit.
Si je comprends bien il a accepté de changer de licence et ça lui a donné du boulot pénible au passage (vérifier que tout contributeur était d'accord). Poser la question de "pourquoi je dois changer de licence, en quoi la cause d'attribution est un problème" ne me paraît pas choquant du tout avant d'entamer un travail de changement de licence. Le taxer d'egocentrisme pour ça c'est abusé.
[^] # Re: Boost ? À réfléchir avant d'utiliser
Posté par David Demelier (site web personnel) . Évalué à 4. Dernière modification le 24 février 2021 à 08:39.
Je crois que tu n'as pas lu la bonne personne. Il est venu demander sur le projet Duktape de changer la licence MIT parce qu'il ne l'aime pas.
L'auteur de Boost.Beast est Vinnie Falco, pas Sami Svaarala (qui lui au passage est une personne formidable).
git is great because linus did it, mercurial is better because he didn't
[^] # Re: Boost ? À réfléchir avant d'utiliser
Posté par Julien Jorge (site web personnel) . Évalué à 10.
C'est vrai que Boost a pas mal perdu de son panache depuis C++11.
J'ai l'impression que l'arrivée du parseur Json n'intéresse pas grand monde et est là plus pour combler un manque que pour répondre a un besoin. Aujourd'hui le Json en C++ ça se joue plutôt entre nlohmann-json et simdjson.
Dans les trucs que j'aimais bien dans Boost il y avait Boost.Signals2 et Boost.Preprocessor. J'avais joué avec Boost.Spirit aussi et j'espère que je n'aurai jamais à y retoucher. À part ça, quelques algorithmes ici et là.
Et puis quelle galère pour compiler tout ça :(
[^] # Re: Boost ? À réfléchir avant d'utiliser
Posté par Tonton Th (Mastodon) . Évalué à 5.
J'avoue que la nuance m'échappe.
[^] # Re: Boost ? À réfléchir avant d'utiliser
Posté par Julien Jorge (site web personnel) . Évalué à 5.
Je tente une reformulation alors :)
Il n'y avait pas besoin d'un nouvel outil pour gérer du Json en C++, il y en avait déjà plein. Mais comme il n'y en avait pas dans Boost ça faisait comme un trou au niveau de ce projet.
# référence nécessaire
Posté par xcomcmdr . Évalué à 3.
Je demande à voir.
"Quand certains râlent contre systemd, d'autres s'attaquent aux vrais problèmes." (merci Sinma !)
[^] # Re: référence nécessaire
Posté par anaseto . Évalué à 3.
Tu es tombé les deux pieds dedans ! ;-)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.