Full description not available
S**D
The next step to your understanding
I have to start off by saying that I do love this book. I will keep it as a reference book for quite a while. I would have given it a 4.5.. but it's not worth a 4..The 4.5 is because there are various grammatical errors throughout the book. Not only general English grammar issues (at one point a sentence seems to just completely stop halfway through it..), but a couple of technical ones too. An example of this is when the author refers to the "copy by value semantics" of reference types. There are also a few spelling mistakes.Other than that, this book delivered on what I was after. The first few chapters focus on various tools for debugging low-level issues within a .NET application. They range from using SDK tools to paid ones. This is the biggest part of the book I will use for reference.. as it involves various techniques that I, even after 6+ years in .NET have never had to use. Although, in all honesty.. I don't know if I ever will refer to these techniques.The rest of the chapters offer up more of a companion book to Jeffrey Richter's "CLR via C#". I feel like this book explains things like Garbage Collection and the CLR's memory management in much more detail. For example, this book covers various runtime implementation details that CLRvC# merely refers to AS implementation details, without covering them. if you're like me and enjoy hearing some of these implementation details that most people prefer not to care about, then this book may just be for you. I also enjoyed the CPU cache discussion; it's interesting to see how the CPU cache is affected given that .NET is such a high level language.This book is for people who want a better understanding of how all of the lower-level details work.Summary: Did I learn anything from this book? Most definitely.
K**I
Must have for any serious .NET development
This book solidifies some fundamentals. Despite the occasional grammatical error, the first seven chapters alone are worth the price of the book,Definitely recommended reading.
A**S
You will learn something new even if you think you know everything
Normally I do not buy books if I am not very certain that they are truly excellent. This is one of them which I can fully recommend if you really want to know what is going on behind the scenes of .NET.The first chapter deals with the performance measuremen tools which gives you a very good overview which tools you should consider using to find performance bottlenecks.The chapter about the the garbage collector and its performance optimizations does contain information I have nowhere else found ever on the web.For many of us are serialization issues a constan source of performance issues. There I have found a perf chart which does compare binary XML with XmlSerializer and DataContractSerializer. Again this is something you will hardly find any informaion on the net.For startup issues there are also some very interesting things noted. Besides the usual NGen stuff also more exotic optimizations like image packers are also briefly mentioned. Even if you cannot use them in your specific scenario you can impress your colleagues with rarely known information.In total it was a fascinating read and I can fully recommend if you want to squeeze out every bit of performance. The only thing I did miss was that although only few code samples were presented not all of them were downloadable. The sample how to deal with overlapped IO and the .NET Threadpool was not part in the source code download.
H**A
Good intro to the topic
It has good content if performance is a new topic for you. It was very shallow on topics such as TPL and diagnostics of perf problems, and I wish it explored more in depth CPU caching and memory guarantees (when can you get away by not using a volatile - if you look at the concurrent collection source code you can see there's a fast and slow path, the fast trying to not touch any volatile and then surrendering to slow when it "fails" by one measure or other)..So it didn't add much for someone who reads online about these topics and explored the ThreadPool internals through their published papers and source code.But again, if you havent read anything on .net performance this is certainly well written, properly structured and will teach you the basics of all you need to know (tools, data locality, lock free, TPL).
D**K
Awesome tour through performance issues
If you can say it about a technical book I was enchanted by it. Author takes on a trip through different aspects of performance that are found day-to-day when you develop an application. Even though it says about .NET, most problems are platform agnostic and it is being explained how to deal it with .NET.Book starts with good explanation on performance measure methodologies and tools. After that it goes one by one through topics such as I/O, parallelism, GPGPU, web app performance and others. During that trip, author explains limitations of .NET as a managed language by comparing to other technologies (C++ in most cases). There are many explanations of hardware architecture as well as Windows OS that may affect performance or give you boost when utilized correctly.I'm little bit biased but I really would like to have one more chapter about GDI and image processing in pre-WPF and post-WPF era, maybe even with some explanation regarding other techniques that can be implemented ad hoc. I guess image processing is a huge subject on its own and another book can be written to explain all caveats.Definitely one of the best books I read so far regarding .NET application development.
S**N
Excellent Book
This is one of the best tech books I have ever read. Sasha does a great job of describing complex topics in an easy to understand way. I also really enjoyed how many practical examples and exercises are in the book, they helped me understand things a lot better.If you are looking to get a deeper understanding of the .NET Framework, and of performance, this is a great choice.