java 开发设计六大基本原则
1. 遵循单一职责原则
一个类只专注于做一件事;
高内聚, 低耦合;
2. 开放 - 封闭原则
对拓展开放, 对修改关闭 (尽可能不动原有代码进行拓展);
高内聚, 低耦合;
为达到目的, 需对系统进行抽象化设计 (关键);
UML 举例:
3. 里氏代换原则 (LSP)
子类必须能够替换它们的基类型, 基类与子类可互换, 客户端没有察觉情况下;
低耦合;
很容易实现同一父类下的各个子类的互换, 而客户端可以毫不察觉;
UML 实例:
士兵只能使用 WeaponGun, 而无法使用 ToyGun 杀敌, 如果使用 ToyGun 将会出错这就是里氏替换原则
4. 依赖倒置原则
这个是开闭原则的基础, 具体内容: 面向接口编程, 依赖于抽象而不依赖于具体写代码时用到具体类时, 不与具体类交互, 而与具体类的上层接口交互
5. 接口隔离原则 (Interface Segregation Principle)
使用多个专一功能的接口比使用一个总接口总要好, 但不能过渡;
一个接口不能过于臃肿;
高内聚
会使一个软件系统功能拓展时, 修改的压力不会影响到别的对象那去;
UML 实例:
Model 只要满足好身材这个条件, 就有可能成为模特, 漂亮女孩满足好身材和好 AngelaBaby 即有好身材又好
6. 迪米特法则 (Law of Demeter)
又叫最少知识原则;
对象与对象之间应该使用尽可能少的方法来关联, 避免千丝万缕的关系;
低耦合;
类知道其他类应尽量少;
类可以访问其他类的方法或者属性也应尽量少;
如果 Lily 和 Jack 自己做 hamburg 那么就会与 VegetableMeatBread 产生千丝万缕关系上图, 则由 KFC 来做, 这样 Lily 和 Jack 就只与 Hamburg 有关关联, 与材料就没有关联了
来源: http://www.bubuko.com/infodetail-2495154.html