虽然软件设计号称有七大原则,但是我个人认为仅有以下原则最重要和实用:
1. 开闭原则: 对扩展开放,对修改关闭
2. 依赖倒置原则:抽象不应该依赖细节,细节应该依赖抽象。其核心思想是:要面向接口编程,而不要面向实现编程
3. 迪米特原则:又称最少知识原则,其精髓是:一个模块应该尽可能少的与其他模块发生关联。 模块之间应该尽量保持陌生,甚至意识不到对方的存在,以最小化、简单化模块间的通信,并达到松耦合的目的。否则模块之间若存在过多的关联,那么一个很小的变动则可能会引发蝴蝶效应般的连锁反应,最终会波及大范围的系统变动。而缺乏良好封装性的系统模块是违反迪米特法则的,牵一发动全身的设计使系统的扩展与维护变的举步维艰。