Posts
825
Practical notes on AI assistants, software architecture, and developer tooling.
Posts
825
Tags
477
Featured
0
自定义特性是 C# 框架机制的底层基础——验证框架、MVC 路由和插件系统都依赖它。本文从 Attribute 的基础定义出发,通过验证约束、插件扫描和命令路由三个完整实例演示如何用反射读取运行时元数据,并介绍热路径下的缓存策略和源代码生成器的适用边界。
Continue reading
自定义特性是 C# 框架机制的底层基础——验证框架、MVC 路由和插件系统都依赖它。本文从 Attribute 的基础定义出发,通过验证约束、插件扫描和命令路由三个完整实例演示如何用反射读取运行时元数据,并介绍热路径下的缓存策略和源代码生成器的适用边界。
当一个 HTTP 客户端同时要处理缓存、限流、日志,单类实现很快变成难以维护的混乱代码。代理模式让每个横切关注点拥有独立的类,它们共同实现同一接口,通过依赖注入组合成调用链。本文以天气 API 客户端为例,完整演示缓存代理、限流代理、日志代理和熔断器代理的 C# 实现与组合方式。
用 IAsyncEnumerable<T> 替换 ToListAsync(),将内存从 O(n) 压到 O(1)。本文提供 4 个生产级模式(EF Core、HttpClient、文件流、ASP.NET Core Controller),以及 4 种常见坑和修复方法。
HttpContext.Connection.RemoteIpAddress 才是正确的入口,而非 Request 对象。本文从扩展方法到内置中间件,一次性讲清楚直连与代理场景下的 IP 获取方式,并附完整 C# 代码。
介绍如何在 Claude Code 中用 SKILL.md 格式创建可复用的工作流技能。涵盖 frontmatter 完整字段、参数替换、动态上下文注入、子 agent 委托,以及从 .NET 端点生成器到 skill-creator 插件的完整实操示例。适合想摆脱重复粘贴 prompt、让团队共享 AI 工作流的开发者。
本文演示如何用一个 NuGet 包在 ASP.NET Core 里构建 MCP 服务器,把负载测试封装成 AI 可调用工具。连上 GitHub Copilot 之后,一句自然语言就能运行压测、对比两个端点的延迟,并自动诊断 ThreadPool 饥饿、GC 压力等常见性能问题。
Dev Leader 这篇文章把 .NET 10 里的反射性能拆开讲清楚:慢的通常是成员查找和 late-bound invocation,优化顺序是缓存 PropertyInfo、使用 FrozenDictionary、编译 delegate、必要时使用 UnsafeAccessor,并用 BenchmarkDotNet 验证。
Microsoft Developer Blog 用 AX stack 解释 AI coding agent 的工作链路:model 和 harness 多半不可控,真正能改的是 skills、MCP servers、instructions 等 agent extensions,并且要用 lift 和 drag 做受控测量。
Microsoft 正在改进 C# 的内存安全模型,计划让 unsafe 从指针语法标记扩展成可传播、可记录、可审查的调用方契约。新模型预计在 .NET 11 预览,在 .NET 12 进入生产发布。
Dr Milan Milanović 写下 20 多年软件工程经验后的 13 条观察:长期有价值的能力往往不在多写代码,而在调试、判断问题、提前计划、保持简单、写测试、记录决策和主动经营职业。
Microsoft ISE 介绍了一套团队使用 AI 编程工具的做法:用 AGENTS.md 提供项目上下文,用 skills 固化重复任务步骤,再让测试、静态检查和评审兜住质量。