dev:cpp:boite_a_outils

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
dev:cpp:boite_a_outils [2017/04/23 19:54]
sdinot [Si souvent qu'on automatise...]
dev:cpp:boite_a_outils [2019/11/22 19:16] (Version actuelle)
sdinot Mise à jour de la liste de bibliothèques et des liens
Ligne 13: Ligne 13:
 Et si Emacs vous semble inaccessible (certaines personnes n'ont que dix doigts) et qu'​Eclipse vous demande trop d'​investissement personnel (quoiqu'​on en dise, une formation est nécessaire pour utiliser pleinement cet IDE), je vous invite à découvrir [[http://​www.geany.org/​|Geany]],​ un éditeur orienté développement qui se prend en main très rapidement. Et si Emacs vous semble inaccessible (certaines personnes n'ont que dix doigts) et qu'​Eclipse vous demande trop d'​investissement personnel (quoiqu'​on en dise, une formation est nécessaire pour utiliser pleinement cet IDE), je vous invite à découvrir [[http://​www.geany.org/​|Geany]],​ un éditeur orienté développement qui se prend en main très rapidement.
  
-<WRAP tip round center 80%>Les aficionados de [[http://​www.vim.org/​|Vim]] me reprocheront certainement de passer sous silence les mérites de leur éditeur préféré alors que je l'​utilise moi-même de temps à autres mais, franchement,​ orienter vers Vim une personne traumatisée par Emacs serait une vacherie que je ne peux assumer ! ;-)</​WRAP>​+Les aficionados de [[http://​www.vim.org/​|Vim]] me reprocheront certainement de passer sous silence les mérites de leur éditeur préféré alors que je l'​utilise moi-même de temps à autres mais, franchement,​ orienter vers Vim une personne traumatisée par Emacs serait une vacherie que je ne peux assumer ! ;-)
  
 Il est d'​usage de définir dans chaque projet des règles de mise en page et des règles de codage mais les développeurs ont tendance à les oublier. Heureusement,​ des outils aident à limiter les dégâts. [[http://​uncrustify.sourceforge.net/​|Uncrustify]] et [[http://​astyle.sourceforge.net/​|AStyle]] permettent de nettoyer et d'​harmoniser la mise en page du code en appliquant les règles de mise en page du projet. De son côté, [[http://​public.kitware.com/​KWStyle/​|KWStyle]] permet de vérifier un certain nombre de règles de codage. Je vous invite à câbler ces outils dans votre gestionnaire de versions : le code sera ainsi reformaté à la volée avant d'​être historisé par le gestionnaire ou rejeté s'il ne respecte pas les règles de codage. Il est d'​usage de définir dans chaque projet des règles de mise en page et des règles de codage mais les développeurs ont tendance à les oublier. Heureusement,​ des outils aident à limiter les dégâts. [[http://​uncrustify.sourceforge.net/​|Uncrustify]] et [[http://​astyle.sourceforge.net/​|AStyle]] permettent de nettoyer et d'​harmoniser la mise en page du code en appliquant les règles de mise en page du projet. De son côté, [[http://​public.kitware.com/​KWStyle/​|KWStyle]] permet de vérifier un certain nombre de règles de codage. Je vous invite à câbler ces outils dans votre gestionnaire de versions : le code sera ainsi reformaté à la volée avant d'​être historisé par le gestionnaire ou rejeté s'il ne respecte pas les règles de codage.
Ligne 81: Ligne 81:
 ===== Prenez quelques bibliothèques pour la route ! ===== ===== Prenez quelques bibliothèques pour la route ! =====
  
-  * [[http://​www.boost.org/​|Boost]] +  * [[https://​www.boost.org/​|Boost]] ​: jeu de bibliothèques C++11 fournissant de nombreux services de base et préfigurant souvent la future norme du C++. 
-  * [[http://qt.nokia.com/|Qt]] +  * [[https://www.qt.io/​developers/​|Qt]] ​: jeu de bibliothèques permettant de créer des applications graphiques et fournissant bien d'​autres services. 
-  * [[http://tclap.sourceforge.net/|TCLAP]] +  * [[https://fmt.dev/|fmt]] : bibliothèque de formatage de chaine de caractères en C++11, utilisant la syntaxe de l'​instruction [[https://​docs.python.org/3/​library/​stdtypes.html#​str.format|str.format]] dans le langage Python. 
-  * [[http://www.hyperrealm.com/main.php?s=libconfig|Libconfig]] +  * [[https://github.com/gabime/​spdlog|spdlog]] : bibliothèque de journalisation (_logging_) en C++11Elle adopte une syntaxe moderne, efficace et s'​avère très rapide. 
-  * [[https://​github.com/​nlohmann/​json|JSON for Modern C++]]+  * [[https://​github.com/​CLIUtils/​CLI11|CLI11]] : bibliothèque d'​analyse de la ligne de commande en C++11. 
 +  * [[https://​github.com/​nlohmann/​json|JSON for Modern C++]] : bibliothèque de lecture et de génération de fichiers JSON. 
 +  * [[https://​agauniyal.github.io/​rang/​|rang]] : bibliothèque C++11 de coloration des sorties sur un terminal.
  
 ===== TODO ===== ===== TODO =====
  • dev/cpp/boite_a_outils.1492970082.txt.gz
  • Dernière modification: 2017/04/23 19:54
  • par sdinot