undrgrnd Cliquez ici NEWNEEEW nav-sa-clothing-shoes Cloud Drive Photos FIFA16 cliquez_ici Rentrée scolaire Shop Fire HD 6 Shop Kindle Paperwhite cliquez_ici Jeux Vidéo
Advanced Metaprogramming in Classic C++ et plus d'un million d'autres livres sont disponibles pour le Kindle d'Amazon. En savoir plus
EUR 38,81
  • Tous les prix incluent la TVA.
Temporairement en rupture de stock.
Commandez maintenant et nous vous livrerons cet article lorsqu'il sera disponible. Nous vous enverrons un e-mail avec une date d'estimation de livraison dès que nous aurons plus d'informations. Cet article ne vous sera facturé qu'au moment de son expédition.
Expédié et vendu par Amazon.
Emballage cadeau disponible.
Quantité :1
Advanced C++ Metaprogramm... a été ajouté à votre Panier
Vous l'avez déjà ?
Repliez vers l'arrière Repliez vers l'avant
Ecoutez Lecture en cours... Interrompu   Vous écoutez un extrait de l'édition audio Audible
En savoir plus
Voir les 2 images

Advanced C++ Metaprogramming (Anglais) Broché – 14 juin 2011


Voir les formats et éditions Masquer les autres formats et éditions
Prix Amazon Neuf à partir de Occasion à partir de
Format Kindle
"Veuillez réessayer"
Broché, 14 juin 2011
EUR 38,81
EUR 38,81 EUR 128,07

Livres anglais et étrangers
Lisez en version originale. Cliquez ici

Offres spéciales et liens associés


Produits fréquemment achetés ensemble

Advanced C++ Metaprogramming + The C++ Programming Language
Prix pour les deux : EUR 91,90

L'un de ces articles sera expédié plus tôt que l'autre.

Acheter les articles sélectionnés ensemble

Descriptions du produit

Présentation de l'éditeur

The book tries to be both an introduction and a reference to C++ template metaprogramming; TMP is presented in the book as a set of techniques that will bring a new style in C++ and make code exceptionally clear and efficient. The book deals with language aspects, design patterns, examples and applications (seen as case studies). Special emphasis is put on small reusable techniques that will improve the quality of daily work. Visit http://acppmp.blogspot.com/ for book errata and updates.

Biographie de l'auteur

Davide Di Gennaro loves to introduce himself as a mathematician, but a better definition would be a philosopher. After studying history of art and functional analysis for some years, he switched to algorithm design and C++. He has been showing the marvels of metaprogramming techniques since the late nineties: as nobody could really understand him, he was eventually nicknamed "the professor". He works for big companies, where his real identity is ignored, and he spends his free time as a photographer. Someone said that "he makes the impossible possible". --Ce texte fait référence à l'édition Broché .



Détails sur le produit


En savoir plus sur l'auteur

Découvrez des livres, informez-vous sur les écrivains, lisez des blogs d'auteurs et bien plus encore.

Dans ce livre

(En savoir plus)
Parcourir les pages échantillon
Couverture | Copyright | Table des matières | Extrait | Index | Quatrième de couverture
Rechercher dans ce livre:

Commentaires en ligne

Il n'y a pas encore de commentaires clients sur Amazon.fr
5 étoiles
4 étoiles
3 étoiles
2 étoiles
1 étoiles

Commentaires client les plus utiles sur Amazon.com (beta)

Amazon.com: 23 commentaires
31 internautes sur 33 ont trouvé ce commentaire utile 
A Classic 17 décembre 2011
Par Marco Marcello - Publié sur Amazon.com
Format: Broché Achat vérifié
I initially approached this book with a bit of caution, as I had found other popular books I read previously on C++ templates quite heavy and mostly irrelevant to my day job.
But as soon as I read chapters 2 and 3 I realized this book is very different.
The first chapters explain in a clear way all that most people need to know about templates and template metafunctions,
and provide the reader with a very practical set of ideas that can immediately be implemented in the code you're working on.
For example, I started using static assertions and tagging almost immediately.
Then the real meat starts, with chapter 4 explaining in detail how to write metafunctions and then proceeding to overload resolution in chapter 5.
Before reading this, I thought this was mostly relevant to compiler writers, but Di Gennaro's explanation of how to exploit SFINAE was really useful
to me, in fact I started using only_if in my code on the same day I read the section.
After this, Advanced C++ Metaprogramming really gets "Advanced" and explains many practical ways of programming with templates,
ensuring that the most amount of computation is executed at compile time. There is a very good section on Lambda expressions, though I've not had the chance to use them yet.
Besides the tools that this book teaches, I think its biggest strength is that difficulty progression is so well calibrated that by the time I finished the book I really have become a better programmer. My way of thinking about my code has changed. Now I see new possibilities, and I try to see if things can be done at compile time using templates.
I will definitely put this book next to my other all-time favourite, Inside the C++ Object Model by Lippman.
Advanced C++ Metaprogramming has the potential to become a classic.
13 internautes sur 14 ont trouvé ce commentaire utile 
This is a *very* technical book, but a very good one 26 avril 2012
Par willfe - Publié sur Amazon.com
Format: Broché
This book is a mind-bender. Metaprogramming in C++ using templates is a "dark art" of its own, but this book helps demonstrate both the utility of it and shows loads of practical examples of what to do with it (and how). Do *not* expect to digest this book in a single sitting, or even in several. It is *thick* -- not just in terms of page count, but in terms of information density. It is certainly not "light reading." Expect instead to read and re-read sections at a time to fully grasp what's being discussed. Expect more success and understanding in reading this text when done while working with a compiler to actually test the concepts being presented as they're encountered. This is fun stuff, but it's thick and heavy stuff.

The book is self-published by its author, and it shows. There are spelling and grammar errors, the margins are a bit too narrow, and some text is hard to read because of the choice to use gradient backgrounds that get a little too dark. None of this matters, however -- the content of the book is outstanding and this kind of self-publishing is to be applauded and encouraged. In fact, I'd love to collaborate with this author (or others like him) on editing a second edition both to further my own understanding of metaprogramming and to improve the already good quality of this book.
30 internautes sur 40 ont trouvé ce commentaire utile 
Good intention but badly written 25 août 2012
Par Hao Xiong - Publié sur Amazon.com
Format: Broché Achat vérifié
It is unbelievable to me that so many people found this book worthy of 5 stars, beyond belief. I don't doubt the author is a good programmer who has had a lot of experience with template metaprogramming, and I can appreciate collecting a lot of obscure techniques in one book. Those are all good reasons to write a book. But the writing is plain terrible. There is no beginning, no gradual explication, just short comments on short snippet of codes. This is not a problem for introducing simple constructs in simple languages such as basic Python, but for C++ template, it is a disaster. I have to read this book slower than I read real analysis textbooks and still get lost on every page.

I bought this book when I saw many good reviews and I felt a real need for such a book, but now I don't know what to think of them. Even reviews for classical C++ books don't get such uniformly good reviews; all but one gave five stars? Those reviews have jargon but praise the book in general terms. I don't want to impugn people without evidence, but I just don't believe the reviewers. Next time I will be more wary of unbelievably good reviews that don't show depth.
11 internautes sur 14 ont trouvé ce commentaire utile 
A lot of info, A lot of mistakes 5 juin 2013
Par Francisco - Publié sur Amazon.com
Format: Broché Achat vérifié
This is not a good book, plain and simple. It's not written professionally (also check Hao Xiong review), it's like a hacker listing of a bunch of tricks, they may be useful indeed, and it's a bit sad for a language one have to know so many, but it's badly written, badly printed. It was the worst print I got in my hands ever, and I think it'll be the only one to this point, I mean, it's literally crooked, it's not rectangular, its form is like a trapezium, all page contents are "floating", which means the margins are also irregular, expected since the book itself is irregular. It's a pretty amateur job.

There's overall lack of organization, you fell like getting trick after trick endlessly.

There's none, zero, mention of variadic templates and modern stuff. This book got released at the same epoch as c++11 and I expected it would talk a bit about it but no, it's like such a thing didn't even exist.

Mailing the author I got this opinion:

Author:
>The book is written for c++03.
>Most compilers don't support c++0x, and most companies don't allow c++0x code.
>So this goes against one of the main goals of the book, which is to be
>useful TODAY.

Me:
> With variadic templates, this could be unbounded, allowing you to declare a
> variable that can hold an instance of one of 100 types.
> And as stated in [...] for GCC:
> "Available as of 2006-09-13, revised on 2006-09-19"
> And in [...] for Clang:
> "Wed Jan 19 16:11:50 2011 CST: Variadic templates are fully implemented."

Author:
>gcc is not a compiler, it's a mess.

Me (actually dreaming):
>And in Visual Studio, which I bet will be there, on the next release.

Author:
>this is what I'm waiting for: when we both have a VS on our
>workstation that implements VT, then let's discuss again.

Me:
>And when I buy a book that states that advanced, I don't expect the author
>judging what I should *not learn* of advanced technics.

Author:
>nope, the reason why you buy a book is PRECISELY because the author,
>from his experience, is usually able to "judge" (i.e. pick and sort
>topics) much better than you would do by yourself. this is exactly why
>they invented such things called universities.
>what you describe here is probably "the encyclopedia of template
>metaprogramming", which is something that I haven't written yet

I'm so glad there's clang and gcc, at last they are able to actually work, and evolve.
3 internautes sur 4 ont trouvé ce commentaire utile 
"Advanced" is the first word in the title 13 avril 2014
Par Paul M. Watt - Publié sur Amazon.com
Format: Broché Achat vérifié
Overall, I like this book.

Ultimately it has changed my mind in believing that meta-programming has no place in production development. I had read C++ Templates, Modern C++ Design, and I also looked into Boost MPL. The pieces didn't quite click for me with the resources I referenced before I found this book.

I read through the first few chapters intrigued by the techniques, but still did not see where to apply the concepts.

When I found a problem that I thought could be solved effectively with meta-programming, I found myself returning primarily to this book. The other template resources that I mentioned are great references. This book seemed to provide the content for me to make the leap from learning about meta-programming, to applying meta-programming into robust production solutions.

Book Layout/Typesetting:

At first I found the format of the book a bit odd and cumbersome like the reviewers that gave low scores. However, I quickly got passed that once I became familiar with how the book is organized.

Advanced:
This is a complex subject. I would not assume that just because you know C++ and how to use STL that this book will make much sense to you. I had no context for much of the content in the book until I set out to solve a problem and kept reading over the different techniques until I found something that I thought might work.

Meta-programming in C++ forces you to approach problems from a different perspective. If you are not strong or at least familiar with functional programming styles, I would expect to struggle with the concepts presented in the book at first. Chapters 3 and 4 are excellent for understanding how to get started.

If you don't own a book on C++ templates, I would start out with "C++ Templates" by Vandevoorde and Josuttis.
If you would like a gentle introduction to meta-programming, start with "Modern C++ Design" by Alexandrescu.
I never bought "C++ Template Meta-programming" by Abrahams because it is highly dependent on Boost.MPL.

After all of those, if you would like a book to tie all of the pieces together and take you beyond, I believe this book does a great job in that role.
Ces commentaires ont-ils été utiles ? Dites-le-nous


Commentaires

Souhaitez-vous compléter ou améliorer les informations sur ce produit ? Ou faire modifier les images?