by Addison-Wesley Professional
| Average Rating: |
|
| Sales Rank: | 260457 (lower is better) |
| Price Used: | $34.12 |
| Shipping: | Free Shipping on most orders over $25* |
| Availability: | Usually ships in 24 hours |
| Label: | Addison-Wesley Professional |
| UPC: | 978342704316 |
| Pages: | 352 |
| Binding: | Paperback |
| Publication Date: | 2001-02-23 |
| Published By: | Addison-Wesley Professional |
| ASIN: | 0201704315 |
| Category: | Book |
Authors
Editorial Reviews and Product Descriptions
Product Description
In Modern C++ Design, Andrei Alexandrescu opens new vistas for C++ programmers. Displaying extraordinary creativity and virtuosity, Alexandrescu offers a cutting-edge approach to software design that unites design patterns, generic programming, and C++, enabling programmers to achieve expressive, flexible, and highly reusable code. The book introduces the concept of generic components, reusable design templates that enable an easier and more seamless transition from design to application code, generate code that better expresses the original design intention, and support the reuse of design structures with minimal recoding. The author then shows how to apply this approach to recurring, real-world issues that C++ programmers face in their day-to-day activity. All code is available on the Web, along with Alexandrescu's downloadable Loki C++ library, which provides powerful out-of-the-box functionality for virtually any C++ project. For experienced C++ programmers who have at least some familiarity with the Standard Template Library (STL).
Customer Reviews
Great techniques, not for the normal programmer - Reviewed on 2007-05-19
4 customers found this review helpful, 1 did not.
Finally I picked up "modern C++ design". It was on my list for a long time. Last years I've been diving more in Java, Groovy, Ruby and other languages. So, this book was back to C++ for me.
I found the book well written, even almost funny at times. The code was clear and it was all easy to understand for me. So, well done since it's always difficult to explain fairly advanced concepts in simple language.
The book consists of 2 parts. The first part describes concepts like policy-based design and typelists. I liked the concept parts and this was my first encounter with typelists, thus I was quite amazed.
The second part of the book describes how to design generic patterns. I liked them, however, I felt that making some of these patterns generic is not really worth it. The amount of duplicate code removed, is not very high. The complexity added by the generic implementation, however is high.
An example is chapter 7, smart pointers. I've designed some libraries in the past and as library designer we agreed on 3 different types of smart pointers. We write three different classes and that's it. Is it worth making a generic implementation which can cover all of these three types. In my opinion, no. However, as an exercise of what you can all do with templates in C++, it was very interesting!
I'm now and then working with developers who develop in C++. They already struggle with the complexity of the language, the environment and the tools. Giving them generic programming in C++, would probably increase their struggle and wouldn't really gain much. Maybe a new language need to be created with better generic programming support instead?
Anyways, for any C++ fanatic or programming fanatic, this is a fantastic book. For "the normal developer" it's probably overkill.
* - See Amazon
Product Page for shipping and pricing details.
Book Subjects
- C & Visual C
- Programming languages
- C (Programming Language)
- Computers
- Computers - Languages / Programming
- Computer Books: General
- Computers / Programming Languages / C++
- Programming Languages - C++
- C++ (Computer program language
- C++ (Computer program language)
- Generic programming (Computer
- Generic programming (Computer science)
- Computing: Professional & Programming