面向对象设计原则(4)DIP

来源:互联网 发布:c语言指针例题 编辑:程序博客网 时间:2024/06/13 13:54
Hollywood 原则:Don''t call us,We''ll call you

 高层模块不应该依赖于低层模块,二者都应该依赖于抽象,
 高层模块包含了一个应用种的重要策略选择和业务模型,正是这些高层模块才使得其所在的应用程序区别于其他。如果它依赖于底层模块,那么底层模块的改动会直接影响到高层模块,从而迫使他们依次错误改动,这是非常荒谬的!(Martin写的太精彩了,这也正是过程化设计的问题所在)

 DIP是FrameWork设计的核心原则,它体现了接口所有权的倒置:客户拥有接口!!

 总结:无论采用何种语言来编写程序,如果程序的依赖关系是倒置的,它就是面向对象的设计。如果程序的依赖关系不是倒置的,他就是过程化的设计

原创粉丝点击