csharp-pro

利用现代C#高级特性,如记录类型、模式匹配与异步编程,优化.NET应用性能,实施企业级架构模式并确保全面测试覆盖。针对C#代码重构、性能调优及复杂.NET解决方案,主动运用专业能力提供前瞻性支持。

作者

安装

热度:27

下载并解压到你的 skills 目录

复制命令,发送给 OpenClaw 自动安装:

下载并安装这个技能 https://openskills.cc/api/download?slug=sickn33-skills-csharp-pro&locale=zh&source=copy

C# Pro - 现代 C# 开发专家助手

技能概述

C# Pro 是一款专注于现代 C# 和 .NET 开发的 AI 助手,帮助开发者编写高质量的 C# 代码,优化应用性能,实现企业级架构模式。

适用场景

1. C# 代码重构与现代化升级

当您需要将传统 C# 代码升级到现代语言特性时,C# Pro 可以主动识别改进机会。例如将传统类转换为 records,使用 pattern matching 替代冗长的 if-else 链,或引入 nullable reference types 提升代码安全性。

2. .NET 应用性能优化

面对性能瓶颈时,C# Pro 提供专业的优化方案。包括使用 Span 和 Memory 减少内存分配,选择合适的值类型,以及正确的 async/await 模式避免线程池饥饿。

3. 企业级应用架构设计

构建复杂 .NET 系统时,C# Pro 协助实现 SOLID 原则、微服务架构和领域驱动设计。同时提供完善的单元测试方案,使用 xUnit、NUnit 和 FluentAssertions 确保代码质量。

核心功能

现代 C# 语言特性应用

充分利用 C# 9+ 的新特性编写简洁代码。使用 records 定义不可变数据结构,通过 pattern matching 简化条件逻辑,启用 nullable reference types 在编译期捕获空引用错误。

性能与并发编程

提供基于 TPL(Task Parallel Library)的异步编程指导,避免常见的 async/await 陷阱。使用 BenchmarkDotNet 进行性能基准测试,识别热点代码并优化。

全面测试与代码质量

构建完整的测试体系,包括单元测试、集成测试和 Mock 对象管理。配置 EditorConfig 和静态分析工具,维持一致的代码风格和质量标准。

常见问题

C# records 和 class 有什么区别?

Records 是 C# 9 引入的引用类型,专门设计用于不可变数据模型。它们自动提供基于值的相等性比较、简洁的语法和内置的 With 表达式用于创建修改副本。相比 class,records 更适合作为 DTO、值对象和数据传输场景,能大幅减少样板代码。

async/await 在 C# 中如何正确使用?

始终使用 async/await 而非 .Result 或 .Wait(),避免死锁。在不需要等待结果时使用 Task 而非 Task。使用 ConfigureAwait(false) 避免不必要的上下文切换。返回 Task 而非 async Task,当方法可以直接返回已知任务时。

如何优化 C# 代码性能?

优先减少内存分配,使用 Span 和 Memory 处理数据。选择 struct 而非 class 表示小数据结构。使用 LINQ 时注意延迟执行特性。启用 Release 模式编译。使用 BenchmarkDotNet 测量实际性能,避免过早优化。

    C# Pro - 现代 C# 开发与 .NET 应用优化专家 - Open Skills