专业 C# (.NET):高级技术
专业 C# (.NET):高级技术
简介:
《专业 C# (.NET):高级技术》是一本实践指南,面向已经掌握 C# 基础并希望提升到更高水平的开发者。作者阿列克谢·索科洛夫系统性地整理了通常超出标准教材范围的复杂主题,并展示了如何在实际项目中应用它们。
本书内容是什么?
本书内容涵盖了 .NET 平台的关键方面,这些方面对于创建高负载和可扩展应用程序至关重要:
- 异步编程:深入解析 async/await、任务并行库 (TPL)、数据通道 (System.Threading.Channels) 和 ValueTask。
- 内存管理与性能:GC(垃圾回收器)的内部工作原理、对象代龄、Span
和 Memory 的使用、对象池化、避免内存分配。 - 不安全代码与互操作:指针、fixed 块、Marshal、P/Invoke、与本机库的交互。
- 反射与元编程:通过表达式树、IL 发射器、源代码生成器创建动态代码。
- 架构与 DI:设计松耦合系统、依赖注入容器 (Microsoft.Extensions.DependencyInjection)、生命周期管理。
- 多线程与同步:无锁数据结构、内存屏障、SpinLock、ReaderWriterLockSlim、Concurrent 集合。
- 现代特性:records、模式匹配、主构造函数、模块、Native AOT。
本书适合谁?
本书面向具有 1-2 年及以上经验的 C# 开发者,他们:
- 希望编写快速、高效的代码,避免垃圾回收器带来的“意外”;
- 正在为应用程序应对高负载做准备,并力求最小化延迟;
- 正在学习 .NET 平台的内部机制,以便做出明智的架构决策;
- 计划晋升为高级开发人员或团队负责人。
读者将学到什么?
阅读本书后,您将能够:
- 设计零线程阻塞的异步管道;
- 优化每秒处理数千个请求的应用程序的内存消耗;
- 使用反射和代码生成来创建灵活的框架;
- 理解 JIT 编译、分层编译和 ReadyToRun 的工作原理;
- 编写安全的不安全代码,用于处理图像、音频和本机 API;
- 配置 DI 容器并管理复杂依赖关系图中的对象生命周期。
每章都包含可直接用于生产环境的代码示例,以及关于常见错误的警告。本书将成为那些力求编写专业 C# 代码并 100% 发挥 .NET 功能的人的案头参考书。