

Fluent C: Principles, Practices, and Patterns

M**R
An Essential Text for Intermediate to Advanced C Programmers
I will say, without reservation, that this is the best book I have ever read on C. And I have read just about all of them.I suppose one should give the K&R pride of place, but this is the book you need after you've written at least one serious system in C. Because by then, you will have discovered yourself wondering about the "best" way to do error checking, memory management, file organization, and much besides. This book (which might have been called "C Design Patterns") is a collection of different ways of approaching these kinds of problems. It's not preachy in the least; sometimes the simpler solutions are better than the more complex ones, and the pros and cons of each are considered carefully and thoroughly.I've been programming in C for a long time, and reading this book was the experience of saying over and over, "Yep, learned that the hard way! Huh, never thought to do it that way. Wait, that won't work for many solutions. Right, he knows that -- which is why he also presents it this other way . . ." Just marvelous from beginning to end. The web is *full* of questions about how to do things The Right Way in C. This is the only volume I am aware of that takes up these questions thoroughly and systematically.The book is not for beginners. If you are learning C for the first time, look elsewhere. But after you've learned C and have written at least one non-trivial system (it doesn't have to be big), this is the book you want. It is that good.
Y**W
Very good
Read all chapters in the part 1 of the book. There are many useful methods that can be used to improve the program structure. It is particularly true in chapter 9 which talks about #ifdef issues.For multiple-file programs, chapter 5, 6, 8 are useful.
L**S
Not really what I expected
This book is too basic. Typical methods for data oriented programing using enums, structs, and unions are not mentioned. The discussion about memory management is also not useful; Instead of covering different strategies for memory allocation the book makes trivial suggestions like putting memory on the stack when possible, or simply not bothering to free memory at all. Instead of reading this book, I would recommend going directly to a more advanced text. Everything that this book covers is better learned by just doing a project or two in C.
J**S
Printing method is blurry at best
The contents of the book are good.The making of the book is not. There are many pages where I have trouble reading due to the print quality; it is as if they printed each page twice, offset just enough to mess with your eyes. If you want to experience dyslexia buy this print.I've had issues with other books from this publisher but this one actually makes me cross-eyed. I'll pass on any more recommendations for books from this corner cutting publisher.
A**R
Well organized book
This book is definitely in my top 4 C programming related readings.Each principle is defined very well and the examples are clear/to the point.If you are comfortable with using structs, enums and their inheritance patterns you will gain a lot from this book! Definitely helped polish my design patterns.
B**R
Perfect
Received exactly as advertised. No problems.
H**F
Excellent book, but title is deceptively wrong.
The book has nothing to do with principles, practices or patterns, but rather is entirely predicated on error recovery by way of pointers and header files. Excellent, and expertly written, but the title is a misnomer. "Advanced Error Recovery", half way between a reference manual with some didactic value for the expert programmer...
Trustpilot
1 month ago
2 weeks ago