笔记 G:从微观组件到人机交互的艺术

[Chief Architect's Note]: 细节决定成败:微观组件代码的“死板逻辑”构成了系统不崩塌的坚实骨架,而人机交互的“包容艺术”则赋予了系统直觉般的灵魂。两者若不能统一,系统要么是一堆无法使用的极客玩具,要么是一个外表华丽但内部时刻准备爆炸的定时炸弹。

模块一:组件级设计 (Component-Level Design) —— 将架构落地为逻辑

组件级设计是连接高层架构与底层代码的桥梁,它的目标是将架构模型转化为可操作的软件细节。

模块二:设计原则 —— SOLID 与可重用性

在面向对象系统中,仅仅把代码拆开是不够的。Pressman 在书中特别强调了以下几项核心设计原则,它们是降低组件复杂度、提升可重用性的金科玉律:

模块三:用户界面设计 (UI Design) 的三大黄金法则

如果说组件设计是为了让机器“好受”,那 UI 设计就是为了让用户“好受”。Theo Mandel 提出了交互设计的三大黄金法则:

  1. 置用户于控制地位 (Place the User in Control):不要用僵化的流程绑架用户。提供灵活的交互方式,允许操作被中断 (Interruptible) 和撤销 (Undoable),并隐藏底层的技术细节,让用户感觉自己是在直接操纵对象。
  2. 减少用户的记忆负荷 (Reduce the User's Memory Load):人类的短期记忆非常有限。系统应提供视觉线索而不是要求用户回忆,建立有意义的默认值,使用基于现实世界的隐喻 (Metaphor),并以渐进式 (Progressive fashion) 的方式披露复杂信息。
  3. 保持界面一致性 (Make the Interface Consistent):在整个应用或产品线中,维持视觉逻辑、输入机制和导航方式的绝对一致,让用户建立可靠的肌肉记忆。

模块四:交互设计 (HCI) 过程 —— 研究、分析、设计与评估的闭环

好的体验不是天才的灵光一现,而是严谨工程过程的产物。


架构师的深度思考维度

[Engineering Mindset] (工程权衡逻辑)

[AI-Era Mapping] (AI 时代的演进与实战)

[Memory Trigger] (记忆触发器)


特别模块:Cursor 逻辑颗粒度与组件重构指令

# [Cursor Refactoring Prompt]: The Architect's Scalpel

**Target Component**: `ComplexOrderProcessor.ts`
**Role**: 精通 SOLID 原则和“逐步求精 (Stepwise Refinement)”的首席底层架构师。

**Context**:
当前的 `processOrder` 函数过于庞大,违反了开闭原则 (OCP),且逻辑颗粒度太粗。我需要你按照以下架构步骤对其进行重构。

**Task Constraints**:
1. **[Stepwise Refinement]**: 首先,不要直接写实现代码!请向我输出该函数的“伪代码流程图”或“活动步骤列表”,将大逻辑分解为 4-5 个高抽象级别的子步骤。
2. **[Interface Segregation & DIP]**: 为每一个子步骤定义一个独立的接口 (Interface)。确保核心逻辑依赖于这些接口,而不是具体的外部服务(如具体的数据库类或第三方支付 API)。
3. **[Design by Contract]**: 为你拆分出的每一个子组件,在注释中明确写出它的契约:
   - `@Precondition` (执行前必须满足的状态)
   - `@Postcondition` (执行后保证的结果)
   - `@Throws` (明确定义的异常边界)

**Action**: 请先输出步骤 1 的设计规划。待我 review (审查) 同意后,再进行具体的代码拆分与生成。

架构师寄语:通过这套指令,你不是在让 AI 盲目地“写代码”,而是在逼迫它像一个真正的工程师一样“做设计”。控制住逻辑的颗粒度,你就控制住了 AI 的灵魂。


下一章:software-03-H:质量保证与评审艺术
首页:Software Engineering MOC