对六大设计原则的理解

我是野路子出身,因此教科书式的知识我接触的相对较晚,二十三种设计模式可能是在2017年首次接触的,而六大设计原则是2020年才首次听闻。

这么久以来,我一直对这六种设计原则理解的比较浅显,因为我总觉得他们之间的界限不够明确,存在很多重叠的规则。 ̄□ ̄||

但从个人的项目实践经验上,我还是有一些个人的理解,在此记录,也作为分享。

对于一个多模块系统软件,大致上可以理解为:

  1. 模块之间应尽可能采用接口调用方式,即面向接口编程,这样可以在一个模块改动时对另一个模块影响最小;
  2. 模块里类的业务功能设计,遵循单一职责原则,但这个职责界限比较难划分,我更多的是靠经验和直觉;
  3. 类里面的成员在设计时,尽可能遵循最少知道原则,即不要暴露不必要的成员,不要设置不必要的参数和返回值,降低调用者的学习成本,同时也降低误调导致的风险。

我只提到了3种设计原则,但我认为这个规范已经能够对我在设计一个完整的系统软件时,从宏观上有了方向感,从微观上有了底线。

你可能感兴趣的:(高效C++,程序人生,设计模式,经验分享,c++)