搬砖方法论:命令查询分离原则(Command-Query Separation,CQS原则)

其原则主张方法应给分为两类:

  • 查询:方法返回结果,但不改变任何系统状态(无副作用)。
  • 命令:方法没有结果,但会改变系统状态。

此原则带来的优点如下

  • 查询类型的方法,对于调用者来讲不用在顾虑各个查询方法的调用顺序和次数(忽略性能的因素)。
  • 命令类型的方法,从语义上来讲更准确。

所以在设计时,应将两种状态分开,避免在同一方法中既有查询又有命令。遵循此原则,系统在阅读和维护上会有很大的帮助,也间接克制了套娃式调用发生的次数。


更多文章详见主页:www.aihailan.com

发表评论