1. 常用的设计原则(记住)
软件开发的流程
需求分析文档、概要设计文档、详细设计文档、编码和测试、安装和调试、维护和升级常用的设计原则
开闭原则(Open Close Principle) : 对 扩展开放 对 修改关闭 ,为了使程序的扩展性好,易于维护和升级。 eg:Person类中缺少age成员,应该新建SubPerson继承自Person 里氏代换原则(Liskov Substitution Principle): 任何基类可以出现的地方,子类一定可以出现,多使用 多态 的方式。 依赖倒转原则(Dependence Inversion Principle): 尽量 多依赖于抽象类或接口 而不是具体实现类,对子类具有强制性和规范性 接口隔离原则(Interface Segregation Principle): 尽量 多使用小接口而不是大接口 ,避免接口的污染,降低类之间耦合度。 迪米特法则(最少知道原则)(Demeter Principle): 一个实体应当尽量少与其他实体之间发生相互作用,使 系统功能模块相对独立 。 高内聚,低耦合 。 合成复用原则(Composite Reuse Principle): 尽量 多使用合成/聚合 的方式,而不是继承的方式。 若希望在当前类中能够使用其他类中的成员时,就可以把其他类的引用声明为该类的成员变量,通过构造方法来进行初始化。可用引用. 来访问其他类中的方法了。public class A { public void show() { System.out.println("这是A类中的show方法!"); }}//其他类中调用A类中的show方法//方式一:继承的方法 java只支持单继承,不推荐使用public class B extends A { public void test(){ show(); }}//方式二:合成复用的原则 推荐使用public class B{ private A a; // 合成复用原则 public B(A a) { this.a = a; } public void test() { a.show(); }}
2. 常用的设计模式
基本概念
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 设计模式就是一种用于固定场合的固定套路。基本分类
创建型模式 - 单例设计模式、工厂方法模式、抽象工厂模式、... 结构型模式 - 装饰器模式、代理模式、... 行为型模式 - 模板设计模式、... 3. 设计模式详解(重点 )单例设计模式
单例设计模式主要分为: 饿汉式 和 懒汉式 ,懒汉式需要对多线程进行同步处理。 ①私有化构造方法,使用private关键字修饰 ②声明本类类型的引用指向本类类型的对象,并使用private static关键字修饰。 ③提供公有的get方法负责将对象返回(return)出去,并使用public static关键字共同修饰。 懒汉式对③的方法要加锁public class Singleton { // 2.声明本类类型的引用指向本类类型的对象并使用private static关键字修饰 private static Singleton sin = null; // 1.私有化构造方法,使用private关键字修饰 private Singleton() {} // 3.提供公有的get方法负责将上述对象返回出去,使用public static关键字修饰 public static /*synchronized*/ Singleton getInstance() { /*synchronized (Singleton.class) { if (null == sin) { sin = new Singleton(); } return sin; }*/ if (null == sin) { synchronized (Singleton.class) { if (null == sin) { sin = new Singleton(); } } } return sin; }}