Posts
881
Practical notes on AI assistants, software architecture, and developer tooling.
Posts
881
Tags
518
Featured
0
用五个贴近生产的 C# 代码示例,逐条讲解 SRP、OCP、LSP、ISP、DIP 的典型违规信号与修复方案。附代码审查清单,帮助在 PR 阶段识别结构问题,避免腐化积累。
Continue reading
用五个贴近生产的 C# 代码示例,逐条讲解 SRP、OCP、LSP、ISP、DIP 的典型违规信号与修复方案。附代码审查清单,帮助在 PR 阶段识别结构问题,避免腐化积累。
用完整的智能家居自动化系统展示中介者模式在 C# 中的落地实现:灯光、温控、安防和音乐播放器通过 HomeAutomationMediator 协调行为,任何设备都不持有对另一设备的直接引用。从接口设计、设备实现、测试验证到 DI 集成,新增设备零改动现有代码。
很多 .NET API 的容量判断只看 CPU 和内存,容易错过连接池、队列、p95 延迟和写入背压这些更早暴露的问题。本文整理一套可复测的容量规划流程,并用原文实验项目说明如何跑 k6 压测、观察 429 与队列滞后。
备忘录模式是 GoF 行为型模式中专门解决状态保存与恢复的那一个。本文从三个角色(Originator / Memento / Caretaker)拆解,覆盖基础实现、撤销重做、序列化快照和嵌套类封装,附带完整 C# 代码。
中介者模式用起来不难,难的是用久了不烂。本文整理 6 条 C# 落地实践:接口隔离、按域拆分、避开上帝中介者、强类型通知、错误处理和测试策略,帮你在项目增长时守住可维护性。
单一职责原则(SRP)是 SOLID 的起点。本文从 Actor 视角重新解读 SRP,结合反例拆解和重构代码演示,讲清楚为什么一个类只应该为一个角色而变,以及如何在 .NET 10 的日常开发中落地。
真实业务流程大多跨多个步骤:下单、扣库存、收款、发通知,每个环节都可能失败或超时。Dapr Workflow 让你用普通 C# 代码编排这些步骤,Dapr 负责把每一步持久化到状态存储中——进程崩溃后重启,工作流会从断点继续执行,不会重复扣款。本文带你从零搭建一个订单处理工作流,并用 .NET Aspire 统一管理 Dapr sidecar、Valkey 状态存储和 Diagrid Dev Dashboard。
来自 Mattrx(110k MAU 的营销分析 SaaS)真实生产环境:10 个 async/await 错误如何造成线程池饥饿、死锁和延迟飙升。每个错误都包含可直接编译的错误代码、修复后的正确写法、dotnet-counters 诊断信号,以及修复后的量化指标——吞吐量从 1,200 RPS 提升到 4,500 RPS,p95 延迟从 8.2 秒降至 1.4 秒,两周工作零新基础设施。