依赖导致原则(Dependency Inversion Principle):代码依赖方向与流程控制的方向倒置。这个原则告诉我们最灵活的系统是那些:源码依赖只针对抽象而不是具体化。像Java这样的语言意味着,用import导入时,只能导入接口或者抽象类。把这个原则当成规则当然是不现实的,因为我们软件系统不可避免的依赖实际类。我们倾向于忽视那些稳定的类(来自于系统、平台),容忍对它们的依赖。我们要避免依赖的是容易改变的实际类,这正是我们在开发的,将要经常改变的类。