Jump to ratings and reviews
Rate this book

Оптимизация приложений на платформе .Net

Rate this book
Увеличение производительности алгоритмов и приложений является чрезвычайно важным аспектом разработки и может дать вам преимущество перед конкурентами, а вашим пользователям обеспечить низкую стоимость владения и удовольствие от использования быстрых и отзывчивых приложений. Данная книга описывает внутренние особенности ОС Windows, среды выполнения CLR и аппаратного обеспечения, влияющие на производительность приложений, а также дает вам знания и инструменты для измерения производительности вашего кода в изоляции от внешних факторов.

Книга наполнена примерами кода на С# и рекомендациями, которые помогут вам выжать максимум возможного из вашего приложения - низкое потребление памяти, согласованную нагрузку на процессор и минимальное количество операций ввода/вывода с сетью и диском.

524 pages, Paperback

First published September 12, 2012

15 people are currently reading
134 people want to read

About the author

Sasha Goldshtein

8 books1 follower

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
30 (40%)
4 stars
32 (42%)
3 stars
10 (13%)
2 stars
2 (2%)
1 star
1 (1%)
Displaying 1 - 5 of 5 reviews
Author 2 books111 followers
February 7, 2017
Performance is a hot topic these days. Currently, you may see a big push in the .NET world towards reducing performance overhead as much as possible in critical areas like .NET Framework, ASP.NET stack, and others.

Pro .NET Performance is supposed to be a good source for this topic. Internal details of the CLR, a lot of advice about performance best practices etc. And the book serves this purpose. But not in a full degree.

I really wanted to love this book, but I just liked it.

There are few reasons for that.

The book is trying to accomplish more that it should. For instance, instead of focusing just on the CLR, .NET and C#, it tries to cover some other topics, like GPU programming (with no direct use cases from the managed code), algorithm optimization (way more general topic), Web performance (an entirely different world that deserves one or two separate books).

.NET itself is very complicated and I really want to dive deeply Just in this area. I want to learn more about JIT, I want to learn more about CLR internals, I want to learn more about performance tuning of my managed app. The book covers those topics but it just scratches the surface.
There are so many myths today that LINQ is bad, that GC is fast, that concurrent programming is easy, that value types will always help and many others. That’s why I would prefer to stay in this area instead of spreading the energy on other, important, but different topics like web programming.

Another aspect that I didn’t like related to a tone of the book. In many cases topics are covered in extreme details: lots of assembly code here and there, even in some places where a short description with plain English or a small diagram will suffice. On the other hand, some topics are described on the high level: concurrency and TPL is an example. In some other cases, the chapter just describes some tool like NGEN, MPGO or something else, will assembly listings but without any guidance or best practices. Should I care? Does it worth it? I don’t know. I want to hear advice from the expert, in this case, not just read some description.

The book is not perfect. As every one of us. But it is helpful. If you’re interested in high-performance managed application the book is for you. Yep, it barely scratches the surface in some areas and covers some internal stuff with a ridiculous amount of details.
Author 1 book35 followers
November 25, 2012
It is often said that all problems in computer science can be solved by another layer of indirection. All, except performance problems. Typically, when performance problems occur, it’s best to approach them like peeling an onion – removing abstractions one by one.

Joel Spolsky once wrote that all abstractions are leaky, and when it comes to understanding and solving performance problems, we often times need to understand things beyond the abstraction. Pro .NET Performance takes exactly this approach – it looks beyond the abstractions the .NET framework provides. Each chapter takes a deep look “under the hood”, into the internals of memory management, object lifetime, reference vs. value types, garbage collection, generic types internals, parallelism and concurrency, unmanaged code, and many more topics, with regards to common performance problems associated with them. This book walks you through the internals of the CLR by utilizing free and commercial tools available, such as CLR profilers, debuggers and other little-known tricks. Pro .NET Performance also has a chapter on algorithm optimization, giving background information on complexity, Big-O notation, Turing machines and NP problems, followed by chapters on performance patterns.

Overall, this book provides very in-depth peek into the internals of the CLR and .NET Framework in general. The author of the book has been teaching and blogging about performance for many years, and now this information is available in this great book, that should be read by anyone who is serious about software development.
Profile Image for Rohit.
21 reviews5 followers
January 19, 2014
One of the best c# books i've read (a must read along with "clr via c#")
Profile Image for Gabrielam13.
179 reviews27 followers
December 14, 2018
Un ghid destul de interesant în lumea performanței în .NET. Am descoperit cum funcționează GC-ul, cum să folosești în mod corect concurent threads, cum să profiți de toate procesoarele computerelor, cum să îmbunătățești performanța aplicațiilor web și multe altele, care mi-au trecut prin creier ca o briză ușoară, nestatornică.

M-am împotmolit destul de mult în exemplele din assemble language. Și deși din această cauză probabil nu am înțeles în profunzime mecanismele pe care încerca să le explice, tot consider că am avut multe de învățat.

La începutul cărții prezintă un număr destul de considerabil de tool-uri cu care îți poți monitoriza aplicațiile. Am fost determinată să le explorez pe toate pe măsură ce le citesc, dar din cauză că durează ceva timp procesul de instalare și explorare, am renunțat, păstrând în minte că voi avea mereu la dispoziție un catalog la care mă pot întoarce la nevoie.

A durat ceva timp să termin cartea în ciuda faptului că nu e extrem de groasă. Și chiar dacă a fost pe alocuri anevoioasă, au fost și multe capitole pe care le-am savurat, așa că voi conclude că a meritat.
Profile Image for Alexey.
30 reviews3 followers
August 13, 2018
You cannot really read the entire book without putting your hands on tools. So it will take time and
you'll get back to it again and again.
Displaying 1 - 5 of 5 reviews

Can't find what you're looking for?

Get help and learn more about the design.