API接口设计原则.docxVIP

  • 6
  • 0
  • 约2.36千字
  • 约 4页
  • 2017-07-05 发布于浙江
  • 举报
API接口设计原则

API接口设计原则一、针对接口编程,而不是针对实现编程–?客户无需知道所使用对象的特定类型,只需要知道对象拥有客户所期望的接口。小注:? ? ? ??接口是定义行为,只是定义我们要做什么事情,至于如何做这些事情是由接口的实现来做的,当我们定义接口的时候无需关心这个行为如何实现,只要知道有这个接口就可以。? ? ? ??别人在调用你的代码的时候,都是调用你的接口对象,至于如何实现,对别人是透明的。二、优先使用对象组合,而不是类继承–?类继承通常为“白箱复用”,对象组合通常为“黑箱复用”。继承在某种程度上破坏了封装性,子类父类耦合度高;而对象组合则只要求被组合的对象具有良好定义的接口,耦合度低。小注:? ? ? ??因为继承在编译时刻就定义了,所以无法在运行时刻改变从父类继承的实现。更糟的是,父类通常至少定义了部分子类的具体表示。因为继承对子类揭示了其父类的实现细节,所以继承常被认为“破坏了封装性”?。子类中的实现与它的父类有如此紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化。当你需要复用子类时,实现上的依赖性就会产生一些问题。如果继承下来的实现不适合解决新的问题,则父类必须重写或被其他更适合的类替换。这种依赖关系限制了灵活性并最终限制了复用性。一个可用的解决方法就是只继承抽象类,因为抽象类通常提供较少的实现。? ? ? ??对象组合是通过获得对其他对象的引用而在运行

文档评论(0)

1亿VIP精品文档

相关文档