Professional C# (.NET): Advanced Techniques
Professional C# (.NET): Advanced Techniques
Summary:
This book is not another introduction to C# syntax. It is intended for developers who already write confidently in C# and want to move to the next level: understand the internal structure of .NET, master the platform's low-level mechanisms, and learn to build high-performance systems.
The author, Alexey Sokolov, a senior developer with 15 years of experience, shares techniques rarely found in standard textbooks. You will learn how JIT compilation works, how to manage garbage collection in real-time, and how to write code that survives under high loads.
What you will learn from the book:
- Advanced Multithreading: thread pools, Task Parallel Library, Dataflow, coordination via Channel and the Actor model.
- Unsafe Code and Pointers: working with native memory, Span
, Memory , optimization without data copying. - Reflection and Metaprogramming: dynamic code generation via Expression Trees and IL emitter, creating custom AOP frameworks.
- Performance Optimization: profiling, GC tuning, fighting allocations, using ValueTask and struct types.
- Roslyn and Analyzers: writing custom Code Analyzers and Fix Providers for static code analysis.
- Interoperability with Native Code: P/Invoke, COM interop, Marshaling complex structures.
Who this book is for:
- C# developers with 2-3 years of experience who want to deepen their platform knowledge.
- Architects and team leads designing high-load systems on .NET.
- Performance specialists looking for practical optimization recipes.
Each chapter contains not only theory but also real-world examples from practice: from optimizing log processing to creating your own DI container. The code is accompanied by explanations of why a particular approach works and what pitfalls await you.
After reading, you will be able to confidently read disassembled IL code, configure GC for a specific scenario, and write libraries that rival native performance. The book will become a desktop reference for those who want to become experts in C# and .NET.