| FlazX | Browse Computer Book | Community Board | Links | Blog | Login |
|
Imperfect C++ : Practical Solutions for Real-Life Programming Google Search |
User review Valuable resouce for C++ practitioners This book has a lot of valuable information for C++ practitioners. However, its language is sort of terse and could have been more verbose to explain subjects. Chapter organizations should also be reconsidered for next release. User review Must Have Book When acquiring this book, was due to its title Practical Solutions for Real-Life Programming my opinions until there is that there are quite excellent books on the market but for me the material does not seam to directly apply to my dayly job. Though the first chapters were hard on the gums, because of the writing stile, but as soon you get into the spirit of the book its quite easy read. Some of the concepts described are in other books, but interesting, when reading them attached to real life examples it gave me a new perspective. Although at first the `real life examples` did not seam that real to me, but after reading the book I find my self returning to the book because I remembered that the book presented a similar situation. Then I now have names to some programming concepts that I was implementing for example Veneers and Boltins. And of course learned new ones for example Shims and Type Tunnelling. There are several good advices in through out the book. During the reading of the book there was one I new but to my shame was not implementing it, so I decided to do it: Make the Compiler your Batman (had some problems with the meaning of Batman since Im not a native English speaker). After forcing my self to implement this, I have probably saved my self from quite a few hours of Debugging. And if you by Chapter 34 you have any doubts on Real-Life aspect of the book. Then Chapter 35 removes all of that doubts when you see with amazement the use of macros to improve source code readability. Not that I love macros but I totally agree with using the right tool for the right job and C++ has a lot of tools. In my little real world code readability is one of the first goals I try to accomplish. Additionally I also found the stories in Appendix B quite inspiring since I could relate the main idea with some events of my personal life experience. User review A surprise indeed! `Imperfect C++` was an amazing surprise to me when I read it a year ago, it was the first time I knew that there're so many imperfections in C++, a language I thought I knew quite well before; and it was the first time I knew that nearly all those imperfections could be circumvented, and circumvented pretty well. As a C++ fan myself, I've been spending quite a portion of my free time on C++, and that is 6 years+. Among all the books I've read about C++, I think this one fill the right gap, that is, most of the C++ books focus on isolated tricks and techniques which, while interesting, often don't take real world constraints in consideration(such as performance, compile-time enforcements, flexibility). User review Genuinely new C++ material This is very different from the many 'intermediate C++' books that are on the market. If you've had your fill of reading about pimpls, use of const and which overloaded operators should be members, it's time to read 'Imperfect C++'. Be warned, it does take a little while to get going, and the author has a rather unusual writing style, which can best be described as an informal hybrid of Aussie and British. And admittedly the opening part of the book covers material reminiscent of the likes of 'Effective C++', albeit with a stronger emphasis on optimisation. But once it gets going, there's a whole new world opened up, rather remote from the rarefied atmosphere of more theoretical books. Imperfect C++ has a very 'in the trenches' feel, where you need to write programs that talk to C, and on a Windows platform. None of the book is about object oriented design as such, but has a library designer's appreciation for dealing with operating system quirks. You know how lots of books have advice along the lines of `NEVER do this` or `ALWAYS do this`? Matthew Wilson takes great delight in providing examples where you might want to do the opposite, and covers a wide variety of topics, including defining a portable boolean, a NULL value, and C#/Pascal/Python-like properties. Purists will almost certainly dislike the fairly heavy use of macros for some of the solutions here, you'll have to get used to the appearance of code with a plethora of underscores in. And the book assumes a reasonably high level of knowledge of C++. In particular, there's little hand holding. Entire class definitions are often provided, but you won't always get example application code to see it in action. This is a little unfortunate, particularly in the chapters where the author introduces his own idioms. It requires careful concentration to work out the physical layout of some of the solutions (e.g. are these free functions or member functions? In the same namespace or a different namespace?). On the other hand, some readers will no doubt welcome the vigorous thought that is required. Overall, this is a very different, practical book to most of the C++ books out there, with a very high signal-to-noise ratio. Add it to your C++ recommended reading list. User review A Stimulating Breath of Fresh Air I finished `Imperfect C++` last night, and it's definitely my `Book of the Month` (and last month, and the one before that). It is clearly written, and Wilson's hard won experience definitely shines through. I liked the practical hands-on angle of the book, `Imperfect Practitioners`, indeed, which is different from other books, and I look forward to Wilson's next book(s). Perhaps, what impressed me the most was the way Wilson took common problems or ideas to their maximum logical consequences and implications. It is not common to actually think through all the possible implications of a particular design decision in terms of (mis-)use, efficiency, robustness and portability. Usually, one does what time permits and what works for the current project. Rarely, are the solutions so well thought out and robust to abuse. From beginner C++ programmers to advanced demi-gurus, all will find something new in this book. It is a worthy and valuable addition to any serious C++ developer's bookshelf. Other books on C++ |
Google Talk : admin-at-flazx-dot-us