CodeRoadMap
路线图学习路径文章题库资源社区

浏览

首页路线图学习路径知识库题库文章资源社区我的学习
CodeRoadMap

中文编程学习导航:路线图、讲义与题库,进度可同步。

路线图学习路径文章题库社区

© 2026 CodeRoadMap

津ICP备2026012044号-1|coderoadmap@126.com
开发路线图/软件设计与架构路线图/告知而非询问
阶段一

告知而非询问

节点说明与学习资源

“告知,而非询问”原则强调对象应该被告知要做什么,而不是被查询其状态并在外部做出决策。这通过将逻辑保留在拥有数据的对象内部来促进封装并减少耦合。

关键概念

  • 不要从对象中拉取数据来做决策,而是将行为推入对象本身。
  • 对象应该对其自身的逻辑和状态管理负责。

询问式(坏):

if (user.profile.isComplete()) { // 允许结算 }

告知式(好):

if (user.canCheckout()) { // 允许结算 }

← 上一节点迪米特法则下一节点 →SOLID