Conception en C++
11 livres et 10 critiques, dernière mise à jour le 14 octobre 2022 , note moyenne : 4.5
- C++ Templates: The Complete Guide - 2e Édition
- Standards de programmation en C++
- Modern C++ Design - Generic Programming and Design Patterns Applied
- Programmation en C++ et génie logiciel
- C++ - la synthèse - Concepts objet,standard ISO et modélisation UML
- C++ Template Metaprogramming : Concepts, Tools, and Techniques from Boost and Beyond
- Pour mieux développer avec C++ - design patterns, STL, RTTI et smart pointers
- Le C++ efficace - Cinquante règles de conception
- Effective C++ (3ème édition) - 55 Specific Ways To Improve Your Programs And Designs
- C++ Templates: The Complete Guide
- C++ pour les programmeurs C - 6ème Édition
C++ Templates: The Complete Guide
2e Édition
Résumé de l'éditeur
Now extensively updated for the C++11, C++14, and C++17 standards, this new edition presents state-of-the-art techniques for a wider spectrum of applications. The authors provide authoritative explanations of all new language features that either improve templates or interact with them, including variadic templates, generic lambdas, class template argument deduction, compile-time if, forwarding references, and user-defined literals. They also deeply delve into fundamental language concepts (like value categories) and fully cover all standard type traits.
The book starts with an insightful tutorial on basic concepts and relevant language features. The remainder of the book serves as a comprehensive reference, focusing first on language details and then on coding techniques, advanced applications, and sophisticated idioms. Throughout, examples clearly illustrate abstract concepts and demonstrate best practices for exploiting all that C++ templates can do.
- Understand exactly how templates behave, and avoid common pitfalls
- Use templates to write more efficient, flexible, and maintainable software
- Master today’s most effective idioms and techniques
- Reuse source code without compromising performance or safety
- Benefit from utilities for generic programming in the C++ Standard Library
- Preview the upcoming concepts feature
The companion website, tmplbook.com, contains sample code and additional updates.
Édition : Addison Wesley - 832 pages, 2e édition, 8 septembre 2017
ISBN10 : 0321714121 - ISBN13 : 9780321714121
- 1. Function Templates
- 2. Class Templates
- 3. Nontype Template Parameters
- 4. Variadic Templates
- 5. Tricky Basics
- 6. Move Semantics and enable_if<>
- 7. By Value or By Reference?
- 8. Compile-Time Programming
- 9. Using Templates in Practice
- 10. Basic Template Terminology
- 11. Generic Libraries
II. Templates in Depth
- 12. Fundamentals in Depth
- 13. Names in Templates
- 14. Instantiation
- 15. Template Arguments Deduction
- 16. Specialization and Overloading
- 17. Future Directions
III. Templates and Design
- 18. The Polymorphic Power of Templates
- 19. Implementing Traits
- 20. Overloading on Types Properties
- 21. Templates and Inheritance
- 22. Bridging Static ans Dynamic Polymorphism
- 23. Metaprogramming
- 24. Typelists
- 25. Tuples
- 26. Discriminated Unions
- 27. Expression Templates
- 28. Debugging Templates
Appendices
- A. The One-Definition Rule
- B. Value Categories
- C. Overload Resolution
- D. Standard Type Utilities
- E. Concepts
Bibliography
Glossary
Commenter Signaler un problème
Now extensively updated for the C++11, C++14, and C++17 standards, this new edition presents state-of-the-art techniques for a wider spectrum of applications. The authors provide authoritative explanations of all new language features that either improve templates or interact with them, including variadic templates, generic lambdas, class template argument deduction, compile-time if, forwarding references, and user-defined literals. They also deeply delve into fundamental language concepts (like value categories) and fully cover all standard type traits.
The book starts with an insightful tutorial on basic concepts and relevant language features. The remainder of the book serves as a comprehensive reference, focusing first on language details and then on coding techniques, advanced applications, and sophisticated idioms. Throughout, examples clearly illustrate abstract concepts and demonstrate best practices for exploiting all that C++ templates can do.
- Understand exactly how templates behave, and avoid common pitfalls
- Use templates to write more efficient, flexible, and maintainable software
- Master today’s most effective idioms and techniques
- Reuse source code without compromising performance or safety
- Benefit from utilities for generic programming in the C++ Standard Library
- Preview the upcoming concepts feature
The companion website, tmplbook.com, contains sample code and additional updates.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Standards de programmation en C++
Résumé de l'éditeur
Les auteurs abordent ici les principaux aspects de la programmation en C++ : styles de conception et de programmation, fonctions, opérateurs, conception des classes, héritage construction/destruction, copie, tâche, espaces de noms, modules, modèles, généricité, exceptions, conteneurs et algorithmes STL etc. Chaque standard présenté est décrit avec précision et illustré par des exemples pertinents. De la définition des types à la gestion des erreurs ce livre présente les meilleures pratiques à mettre en ?vre lorsque l'on programme en C++ y compris certaines techniques mises au point très récemment.
Édition : Pearson Education - 243 pages, 1er août 2005
ISBN10 : 2744071447 - ISBN13 : 978744071447
Style de conception, style de programmation, héritage, construction, destruction, idiomes (RAII, pimpl), espace de noms, module, généricité, exception, STL (conteneurs et algorithme)... Autant de points sur lesquels les auteurs nous apportent leurs conseils afin de programmation proprement, efficacement et sûrement.
Le livre est composé de 100 Articles organisés autour de 12 problématiques. Le débutant y découvrira beaucoup de choses intéressantes, rarement explicitées en cours ou dans les livres sur le langage C++, et pourra approfondir ses connaissances du développement avec le C++. L'expérimenté pourra corriger de mauvaises habitudes prises lors de son apprentissage et découvrir des pièges de sioux à éviter .
En bref, tout le monde peut trouver son compte avec cet ouvrage délivrant des conseils très pertinents, fruits de la mise en commun des expériences des grands du développement C++, pour standardiser ses codes et prendre les bons réflexes de programmation. Les articles sont agrémentés d'exemples (illustrés ou non de morceaux de codes) et d'exceptions (que serait une règle sans exception ?).
Commenter Signaler un problème
Les auteurs abordent ici les principaux aspects de la programmation en C++ : styles de conception et de programmation, fonctions, opérateurs, conception des classes, héritage construction/destruction, copie, tâche, espaces de noms, modules, modèles, généricité, exceptions, conteneurs et algorithmes STL etc. Chaque standard présenté est décrit avec précision et illustré par des exemples pertinents. De la définition des types à la gestion des erreurs ce livre présente les meilleures pratiques à mettre en ?vre lorsque l'on programme en C++ y compris certaines techniques mises au point très récemment.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Modern C++ Design
Generic Programming and Design Patterns Applied
Résumé de l'éditeur
La totalité du code est disponible sur le Web, ainsi que la bibliothèque C++ Loki d'Alexandrescu qui propose de puissantes fonctionalités pour presque n'importe quel projet C++.
Édition : Addison-Wesley Professional - 352 pages, 1re édition, 1er février 2001
ISBN10 : 0201704315 - ISBN13 : 9780201704310
Une grande partie de l'ouvrage est dédié aux typelists et leur usage. Ces structures sont clairement expliquées, et pour une fois, on voit des applications : générer des classes héritant de plusieurs autres classes pour générer des hierarchies, des factories, ... A ce sujet, plusieurs patterns sont exposés et une implémentation type est proposée, templatée, avec des politiques à choisir et donc utilisable facilement.
Commenter Signaler un problème
La totalité du code est disponible sur le Web, ainsi que la bibliothèque C++ Loki d'Alexandrescu qui propose de puissantes fonctionalités pour presque n'importe quel projet C++.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Programmation en C++ et génie logiciel
Résumé de l'éditeur
Dans cet ouvrage, vous trouverez tous les éléments du langage mais également un ensemble de recommandations qui vous guideront dans l'écriture de vos programmes. La première partie est consacrée à la présentation des notions élémentaires du génie logiciel, ces notions étant illustrées ensuite dans le reste de l'ouvrage. La deuxième partie est dédiée à l'apprentissage des éléments de base du langage C++. A partir de là, vous saurez créer des classes, y définir des attributs et des méthodes. La troisième partie présente les mécanismes particuliers du langage : l'amitié, les exceptions, l'héritage, la surcharge, les patrons, le polymorphisme et les flots. De nombreux exemples ponctuent l'apprentissage des notions du cours et des exercices corrigés permettent de confirmer les automatismes acquis. Le code source des exemples est téléchargeable.
Édition : Dunod - 241 pages, 1re édition, 1er mai 2007
ISBN10 : 210050634X - ISBN13 : 9782100506347
- Notions de base sur le génie logiciel
- Généralités sur le langage C++
- Les objets
- Les traitements
- Les fonctions et les classes amies
- Les exceptions
- L'héritage
- La surcharge
- Les patrons de fonctions et de classes
- Introduction au polymorphisme et aux méthodes virtuelles
- Les flots
En effet, les concepts de base sont totalement ignorés, et les nouveautés introduites en C++ s'enchaînent. Il faut un minimum s'accrocher si l'on ne veut pas perdre pieds. Les exercices proposés en fin d'ouvrage seront un atout inestimable dans cette tâche.
Une autre particularité appréciable de ce livre est son orientation "génie logiciel". Ou comment concevoir proprement un programme, en ne faisant pas qu'exploiter à tous vas les possibilités techniques du langage, sans réfléchir à la maintenance. Plusieurs excellents conseils vont dans ce sens, répartis au fil du livre. On aurait pu en espérer un peu plus, avec peut-être plus d'exemples, et c'est ce qui m'a découragé de mettre un 4,5/5 à ce livre.
A part cela, il est en effet excellent. Autant il introduira rapidement les spécialités du C++, autant il pourra servir a posteriori d'un excellent aide-mémoire des syntaxes parfois compliquées des templates ou de l'héritage multiple. Ce qui n'est pas négligeable.
Je conseillerais cet ouvrage à tout connaisseur du C voulant débuter ou s'améliorer en C++. Il y trouvera son bonheur.
Sébastien Doeraene
Commenter Signaler un problème
Les commentaires ont toujours été un sujet à débat. Avec d'un côté des qualiticiens non programmeurs généralement dans le camp des "il faut des taux de commentaire de X% -- car c'est une métrique que je peux vérifier automatiquement et que je peux la donner au client". Et de l'autre des développeurs conscients que paraphraser ne rime à rien, que cela fait deux fois plus de boulot, et donc de bugs.
Pour remettre dans le contexte de 2018, je tendrais à dire qu'il est dommage de s"intéresser à un livre de 2007 en 2018 quand entre temps la norme du C++ a connu trois évolutions dont une particulièrement majeure en 2011. Après, si le plan génie logiciels/conception est bon (ce que je ne peux pas juger), le livre pourrait s'avérer intéressant. Il y a quelques vieux livres toujours intéressants malgré leur retard sur la modernisation du C++ avec le RAII (je ne parle même pas du C++11).
Après, là, dans l'extrait sur le site de Dunod, les chaînes de caractères sont des "char*". On part donc de loin!
Je ferai bien de la pub pour un autre livre qui traite de conception en C++, mais après on dira que ce n'est pas un livre qui enseigne le C++, ou que je suis intéressé. ^^'
Par exemple, niveau commentaire, il est maintenant conseillé de ne commenter les lignes de code qu'en cas de ligne vraiment complexe, car n'importe quel programmeur comprendra un code bien fait. Par contre il faut faire des entêtes pour les classes, méthodes et fonctions.
Il m'a laissé une assez mauvaise impression de base. Il faudrait une version améliorée et mise à jour.
Dans cet ouvrage, vous trouverez tous les éléments du langage mais également un ensemble de recommandations qui vous guideront dans l'écriture de vos programmes. La première partie est consacrée à la présentation des notions élémentaires du génie logiciel, ces notions étant illustrées ensuite dans le reste de l'ouvrage. La deuxième partie est dédiée à l'apprentissage des éléments de base du langage C++. A partir de là, vous saurez créer des classes, y définir des attributs et des méthodes. La troisième partie présente les mécanismes particuliers du langage : l'amitié, les exceptions, l'héritage, la surcharge, les patrons, le polymorphisme et les flots. De nombreux exemples ponctuent l'apprentissage des notions du cours et des exercices corrigés permettent de confirmer les automatismes acquis. Le code source des exemples est téléchargeable.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
C++ - la synthèse
Concepts objet,standard ISO et modélisation UML
Résumé de l'éditeur
Édition : Dunod - 336 pages, 1re édition, 1er mai 2003
ISBN10 : 2100081926 - ISBN13 : 9782100081929
Le chapitre trois reprend les bases du précèdent pour définir une classe fonctionnelle et introduire le modificateur const, la surcharge des opérateurs, l'attribut statique dans une variable, une fonction et plus généralement le mot clef static. Il se conclut par des conseils pour livrer une classe, c'est-à-dire les problèmes inhérents à la compilation avec le fichier d'entête.
Le chapitre quatre étudie le concept d'héritage successivement on trouvera les classes dérivées, l'hiérarchie de classes et classe abstraite, l'héritage multiple, l'héritage virtuel. Le propos est clair progressif et agrémenté de schémas. C'est à partir de ce chapitre que la modélisation UML sera abordée.
Le chapitre cinq parle de généricité et introduit au final la notion de template. Un seul regret toutefois : les auteurs parlent de la STL mais sans l'aborder. Le chapitre six nommé « bien programmer en c++ » liste les erreurs les plus courantes et fournit des conseils pratiques pour améliorer et optimiser le code.
Enfin le chapitre sept traite de l'analyse objet à l'implémentation, ce chapitre permet de se familiariser avec les techniques de modélisations objet en utilisant le formalisme UML. Cette étude s'appuie sur la réalisation d'un petit projet de modélisation du réseau routier.
En résumé : Ce qui m'a plu : ce livre est assurément un bon choix pour les débutants tant par l'approche pédagogique basée sur l'exemple et l'enrichissement progressif des connaissances, que par les conseils prodigués au fil des pages. La présentation UML est aussi un plus ce qui est rare pour ce genre d'ouvrage. Un seul regret toutefois : l'absence d'une présentation de la bibliothèque STL.
Commenter Signaler un problème
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
TYPE COMPOSE OU CLASSE : DE C A C ++
Un premier programme C ++
Structures de contrôle et utilisation des fonctions
La classe " string "
Modularité
Le type abstrait " ville " est insuffisant
Des objets " ville "
Contrôler l'instanciation des objets " ville "
Affectation et conversion de type
Allocation dynamique
Destructeur
Constructeur copie
Allouer dynamiquement un objet
Surcharge d'opérateurs
Variables et méthodes de classe
Livrer une classe
Une première classe dérivée : Rectangle
Hiérarchie des classes et classe abstraite
Héritage multiple
Héritage virtuel
Une solution fondée sur les " template "
Rendre votre code robuste
Un code évolutif
Optimiser votre code
Analyse objet
Conception objet et implémentation
Test des classes implémentées
Une application graphique.
Bonne lecture
C++ Template Metaprogramming : Concepts, Tools, and Techniques from Boost and Beyond
Résumé de l'éditeur
Édition : Pearson Education - 373 pages, 2e édition, 1er décembre 2004
ISBN10 : 0321227255 - ISBN13 : 9780321227256
90% du livre est consacrer à exposer les bases de la métaprogrammation en C++. On nous montre beaucoup de choses, des itérateurs, des conteneurs, des trucs, des choses, mais on ne voit pas forcément du tout l'utilité. Celle-ci vient dans les derniers chapitres. Déjà, on parle plus de langages spécifiques à un domaine, des parseurs, des outils du genre. Et puis le seul passage qui m'a vraiment montré ce qu'on pouvait faire : Blitz++. On n'en parle pas beaucoup, mais rien que l'exemple montre qu'effectivement, c'est super puissant. Le seul problème, à mon avis, c'est que ça demande beaucoup de temps à appliquer.
Dans les appendices, on voit aussi la conformité des compilateurs avec le standard C++, le préprocesseur et Boost pour l'aider, on voit les performances du compilateur, ... Une partie est aussi consacrée aux erreurs du compilateur avec les templates et les différences entre les compilateurs. Un point intéressant est aussi les assertions statiques, donc à la compilation.
Dans l'ensemble, ce livre est LA référence de la métaprogrammation et il m'a donné de nouvelles idées à appliquer. Malheureusement, le livre reste compliqué et l'application des idées demande beaucoup de temps - et pour nous et pour le compilateur -.
Commenter Signaler un problème
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Pour mieux développer avec C++
design patterns, STL, RTTI et smart pointers
Édition : Dunod - 188 pages, 1re édition, 1er octobre 1999
ISBN10 : 210004835X - ISBN13 : 9782100048359
Commenter Signaler un problème
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Le C++ efficace
Cinquante règles de conception
Résumé de l'éditeur
- Les conseils d'un expert sur la conception orientée objet, la conception et la mise en ?vre des classes, l'utilisation correcte de l'héritage, la gestion de la mémoire.
- Des recettes innovantes pour simuler des propriétés que ne possède pas forcément son compilateur. Toute une sagesse patiemment acquise, traditionnellement transmise de bouche de programmeur à oreille de programmeur ou de développeur. A la différence de la plupart des ouvrages consacrés au C++, celui-ci ne s'articule pas autour de caractéristiques particulières du langage, chaque explication étant associée à la suggestion qu'elle accompagne.
- L'avantage de cette approche est de refléter plus fidèlement la complexité des systèmes logiciels pour lesquels le C++ est souvent choisi, et d'amener à une compréhension efficace des interactions entre le caractère propre de ce langage et des règles de développement universellement applicables.
Édition : Vuibert - 256 pages, 1er février 2001
ISBN10 : 271178682X - ISBN13 : 9782711786824
La lecture de cet ouvrage est un réel plaisir, chaque partie se révèle riche en enseignements et conseils tous plus pertinents les uns que les autres. L'ouvrage est court (256 pages), mais l'auteur ne s'est pas arrêté là avec l'écriture d'un second volet : More effective C++ (apparemment pas encore traduit en français).
Le seul reproche qu'on pourrait faire à ce livre est son âge : il a été écrit en 1991. De ce fait, de nombreux mécanismes du C++ aujourd'hui communs sont présentés comme des améliorations futures du langage -- les templates, les exceptions et les classes imbriquées par exemple. L'ouvrage souffre également d'une non-conformité vis-à-vis de la dernière norme de 1998, et certains (rares) morcreaux de code sont à reconsidérer.
Cependant l'ouvrage s'en trouve peu affecté : l'intérêt de celui-ci est de donner des conseils et techniques d'ordre général sur la conception et les mécanisme du langage, et non des éléments de syntaxe. La quasi totalité des chapitres ne souffre donc pas de ce grand âge, et pour les quelques exceptions le lecteur pourra aisément faire la part des choses.
Comme tous les ouvrages de l'auteur, Le C++ efficace est donc un livre à posséder dans sa bibliothèque, et sera utile tout autant au débutant voulant éviter les pièges du langage qu'à l'expert souhaitant perfectionner ses connaissances.
Commenter Signaler un problème
- Les conseils d'un expert sur la conception orientée objet, la conception et la mise en ?vre des classes, l'utilisation correcte de l'héritage, la gestion de la mémoire.
- Des recettes innovantes pour simuler des propriétés que ne possède pas forcément son compilateur. Toute une sagesse patiemment acquise, traditionnellement transmise de bouche de programmeur à oreille de programmeur ou de développeur. A la différence de la plupart des ouvrages consacrés au C++, celui-ci ne s'articule pas autour de caractéristiques particulières du langage, chaque explication étant associée à la suggestion qu'elle accompagne.
- L'avantage de cette approche est de refléter plus fidèlement la complexité des systèmes logiciels pour lesquels le C++ est souvent choisi, et d'amener à une compréhension efficace des interactions entre le caractère propre de ce langage et des règles de développement universellement applicables.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Effective C++ (3ème édition)
55 Specific Ways To Improve Your Programs And Designs
Résumé de l'éditeur
— Steve Schirripa, Software Engineer, Google“C++ and the C++ community have grown up in the last fifteen years, and the third edition of Effective C++ reflects this. The clear and precise style of the book is evidence of Scott’s deep insight and distinctive ability to impart knowledge.”
— Gerhard Kreuzer, Research and Development Engineer, Siemens AG
The first two editions of Effective C++ were embraced by hundreds of thousands of programmers worldwide. The reason is clear: Scott Meyers’ practical approach to C++ describes the rules of thumb used by the experts — the things they almost always do or almost always avoid doing — to produce clear, correct, efficient code.
The book is organized around 55 specific guidelines, each of which describes a way to write better C++. Each is backed by concrete examples. For this third edition, more than half the content is new, including added chapters on managing resources and using templates. Topics from the second edition have been extensively revised to reflect modern design considerations, including exceptions, design patterns, and multithreading.
Important features of Effective C++ include:
- Expert guidance on the design of effective classes, functions, templates, and inheritance hierarchies.
Applications of new “TR1” standard library functionality, along with comparisons to existing - standard library components.
- Insights into differences between C++ and other languages (e.g., Java, C#, C) that help developers from those languages assimilate “the C++ way” of doing things.
Édition : Addison-Wesley Professional - 320 pages, 3e édition, 1er mai 2005
ISBN10 : 0321334876 - ISBN13 : 9780321334879
En fait, le livre a été complètement remanié, par exemple la première partie n'est plus consacrée à la migration C vers C++, mais à l'adaptation au C++ à travers les mots-clés const, les initialisations, ... La difficulté est croissante, les premiers éléments étant très simples à appréhender et à mettre en œuvre - logique, c'est l'adaptation au C++ - puis on avance vers des terrains de plus en plus minés - qu'est-ce que le compilateur crée comme fonction qu'on ne veut pas forcément, les opérateurs d'assignations, ... -. La partie sur la gestion de la mémoire gagne en complexité et s'applique à toutes les ressources, non plus seulement la mémoire. Les parties dédiées au design et déclaration des classes, leurs implémentations ainsi que l'héritage sont elles aussi pertinentes. Certains éléments des anciennes éditions ont été déplacés dans d'autres sections, d'autres éléments ont été incorporés judicieusement. Une partie dédiée à la programmation générique a été introduite, on va même jusqu'à la méta-programmation. La section consacrée à new et delete est aussi nouvelle et on parle de leur surcharge, ce qui est très intéressant.
En fait, ce livre est vraiment dédié au C++ et non à la jonction C/C++ comme par le passé. Il est même orienté vers le futur, plusieurs allusions au nouveau standard en discussion sont faites dans tout le livre avec les nouvelles classes apparues dans TR1:: et Boost. Ce livre, dans cette dernière édition, est de nouveau à la pointe, comme il l'a été lors de la première édition, après avoir marqué le pas face aux livres plus récents et plus "C++". Encore un livre à avoir dans sa bibliothèque !
Commenter Signaler un problème
— Steve Schirripa, Software Engineer, Google“C++ and the C++ community have grown up in the last fifteen years, and the third edition of Effective C++ reflects this. The clear and precise style of the book is evidence of Scott’s deep insight and distinctive ability to impart knowledge.”
— Gerhard Kreuzer, Research and Development Engineer, Siemens AG
The first two editions of Effective C++ were embraced by hundreds of thousands of programmers worldwide. The reason is clear: Scott Meyers’ practical approach to C++ describes the rules of thumb used by the experts — the things they almost always do or almost always avoid doing — to produce clear, correct, efficient code.
The book is organized around 55 specific guidelines, each of which describes a way to write better C++. Each is backed by concrete examples. For this third edition, more than half the content is new, including added chapters on managing resources and using templates. Topics from the second edition have been extensively revised to reflect modern design considerations, including exceptions, design patterns, and multithreading.
Important features of Effective C++ include:
- Expert guidance on the design of effective classes, functions, templates, and inheritance hierarchies.
Applications of new “TR1” standard library functionality, along with comparisons to existing - standard library components.
- Insights into differences between C++ and other languages (e.g., Java, C#, C) that help developers from those languages assimilate “the C++ way” of doing things.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
C++ Templates: The Complete Guide
Résumé de l'éditeur
C++ Templates begins with an insightful tutorial on basic concepts and language features. The remainder of the book serves as a comprehensive reference, focusing first on language details, then on a wide range of coding techniques, and finally on advanced applications for templates. Examples used throughout the book illustrate abstract concepts and demonstrate best practices.
Readers learn
* The exact behaviors of templates
* How to avoid the pitfalls associated with templates
* Idioms and techniques, from the basic to the previously undocumented
* How to reuse source code without threatening performance or safety
* How to increase the efficiency of C++ programs
* How to produce more flexible and maintainable software
This practical guide shows programmers how to exploit the full power of the template features in C++. The companion Web site at http://www.josuttis.com/tmplbook/ contains sample code and additional updates.
Édition : Addison Wesley - 552 pages, 1re édition, 12 novembre 2002
ISBN10 : 0201734842 - ISBN13 : 9780201734843
Commenter Signaler un problème
C++ Templates begins with an insightful tutorial on basic concepts and language features. The remainder of the book serves as a comprehensive reference, focusing first on language details, then on a wide range of coding techniques, and finally on advanced applications for templates. Examples used throughout the book illustrate abstract concepts and demonstrate best practices.
Readers learn
* The exact behaviors of templates
* How to avoid the pitfalls associated with templates
* Idioms and techniques, from the basic to the previously undocumented
* How to reuse source code without threatening performance or safety
* How to increase the efficiency of C++ programs
* How to produce more flexible and maintainable software
This practical guide shows programmers how to exploit the full power of the template features in C++. The companion Web site at http://www.josuttis.com/tmplbook/ contains sample code and additional updates.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
C++ pour les programmeurs C - 6ème Édition
Résumé de l'éditeur
Édition : Eyrolles - 602 pages, 6e édition, 16 janvier 2008
ISBN10 : 2212122314 - ISBN13 : 9782212122312
Commenter Signaler un problème
Et même quand il parle de C, il parle implicitement du C89, pas du C99, ce que je trouve étrange pour un livre écrit en 2007.
Comme developpez n'aime pas publier les critiques négatives, je pense ne pas être un bon choix pour ce livre... Mais je pense surtout que ce livre n'est pas un bon choix pour être critiqué. Pourquoi perdre du temps avec ?
La dernière fois que j'avais regardé, c'était un livre de C++ historique, et sa réception sur les forums en ligne est généralement mauvaise.
Personne ne bashe pour le plaisir. Je dirai même que nous sommes dans l'attente de plus d'ouvrages modernisés en langue française que le C++ Primer (qui a une édition de retard), ou Je Me Lance (épuisé et limité dans son périmètre). C'est un boulot de titan, nous en avons conscience.
Par ce que nous entendons par "modernisé", cf une courte prose sur le sujet, ou la conférence de Kate Gregory sur le sujet: .
Cordialement.