Course info
May 12, 2014
1h 47m

In this course, you will learn how to make .NET code faster by applying a set of techniques and APIs. You will see how to choose collections correctly based on their performance characteristics, and when to design your own. You will see how to improve application startup and load times by applying precompilation. You will also see how to improve performance with value types, unsafe code, and a bag of additional smaller tricks.

About the author
About the author

Sasha is the CTO of Sela Group and a Microsoft C# MVP. He specializes in performance optimization, production debugging, distributed/cloud systems, and mobile development. Sasha is also a frequent conference speaker and published book author.

More from the author
Measuring .NET Performance
3h 18m
9 Jul 2015
Making .NET Applications Even Faster
3h 10m
12 Nov 2014
Section Introduction Transcripts
Section Introduction Transcripts

Implementing Value Types Correctly
Welcome to Pluralsight. My name is Sasha Goldshtein and I'm here to show you how to make your. NET applications faster. During this course we will look at several practical techniques for improving your application's performance. Such as precompilation, using pointers and unsafe code, using parallelism. And these are all ways to improve the performance of your apps, during the development process. One thing we will not talk about is performance measurement tools and techniques. Now it's extremely important to measure performance before you start optimizing anything, but it's something I intend to cover in a future course. Another thing we won't focus on is measuring and improving performance in production environments, after your development is done. And this is also a topic I intend to cover in the future. In this module we will look at implementing value types correctly. It turns out that adhering to a simple set of guidelines can make your value types 10 times faster and considerably reduce your application's memory usage.

Applying Precompilation
Welcome to Pluralsight. My name is Sasha Goldshtein. In this module we'll see how to improve application startup and other common scenarios by using precompilation. There are various kinds of precompilation that we can use in. NET applications. The best known one is NGen, Native Image Generation. NGen can generate native versions of your. NET assemblies so they don't have to be compiled when you use them for the first time, at runtime. We'll also look at other things that can be precompiled, such as serialization assemblies and regular expressions. And we'll also look at other ways, a set of general tips, for improving application startup like Multi-core background JIT, and MPGO.