Java
多线程
http://www.cnblogs.com/skywang12345/p/java_threads_category.html设计模式
http://blog.csdn.net/column/details/pattern.html
设计模式6大原则单一职责原则:
不要存在多于一个导致类变更的原因。里氏替换原则:
子类可以扩展父类的功能,但不能改变父类原有的功能- 子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法。
- 子类中可以增加自己特有的方法。
- 当子类的方法重载父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。
依赖倒置原则:
高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。- 依赖倒置原则的核心思想是面向接口编程,理解了面向接口编程,也就理解了依赖倒置
- 低层模块尽量都要有抽象类或接口,或者两者都有
- 变量的声明类型尽量是抽象类或接口。
- 使用继承时遵循里氏替换原则。
接口隔离原则
客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。
接口隔离原则的含义是:建立单一接口,不要建立庞大臃肿的接口,尽量细化接口,接口中的方法尽量少。也就是说,我们要为各个类建立专用的接口,而不要试图去建立一个很庞大的接口供所有依赖它的类去调用。
采用接口隔离原则对接口进行约束时,要注意以下几点:- 接口尽量小,但是要有限度。对接口进行细化可以提高程序设计灵活性是不挣的事实,但是如果过小,则会造成接口数量过多,使设计复杂化。所以一定要适度。
- 为依赖接口的类定制服务,只暴露给调用的类它需要的方法,它不需要的方法则隐藏起来。只有专注地为一个模块提供定制服务,才能建立最小的依赖关系。
- 提高内聚,减少对外交互。使接口用最少的方法去完成最多的事情。
运用接口隔离原则,一定要适度,接口设计的过大或过小都不好。设计接口的时候,只有多花些时间去思考和筹划,才能准确地实践这一原则。
迪米特法则
一个对象应该对其他对象保持最少的了解。
软件编程的总的原则:低耦合,高内聚。开闭原则
一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。
开闭原则无非就是想表达这样一层意思:用抽象构建框架,用实现扩展细节。- 单一职责原则告诉我们实现类要职责单一;
- 里氏替换原则告诉我们不要破坏继承体系;
- 依赖倒置原则告诉我们要面向接口编程;
- 接口隔离原则告诉我们在设计接口的时候要精简单一;
- 迪米特法则告诉我们要降低耦合;
- 开闭原则是总纲,他告诉我们要对扩展开放,对修改关闭;
在java以及其他的面向对象设计模式中,类与类之间主要有6种关系。
他们分别是:依赖、关联、聚合、组合、继承、实现。
他们的耦合度依次增强。
转自:http://blog.csdn.net/zhengzhb/article/details/7187278