引入
在网上看到一个比较好的例子:吃饭
方法一:自己去买菜,自己洗菜和自己炒菜,任务完成。
方法二:去饭店吃,相当于自己雇了一群人,一个负责买菜,一个负责洗菜,一个负责炒菜;自己只负责指挥调度,不需要知道人家是怎么买菜、怎么洗菜、怎么炒菜的。
自己的理解
在开发一个业务时,我们需要分解这个业务,把实现这个业务的具体实现过程封装成不同的对象,并且赋予他们不同的功能;需要完成业务的时候,只需要调用这些对象相应的功能,不需要知道具体实现的过程,这样可以提高代码的重用性,方便继承扩展。
引入
在网上看到一个比较好的例子:吃饭
方法一:自己去买菜,自己洗菜和自己炒菜,任务完成。
方法二:去饭店吃,相当于自己雇了一群人,一个负责买菜,一个负责洗菜,一个负责炒菜;自己只负责指挥调度,不需要知道人家是怎么买菜、怎么洗菜、怎么炒菜的。
自己的理解
在开发一个业务时,我们需要分解这个业务,把实现这个业务的具体实现过程封装成不同的对象,并且赋予他们不同的功能;需要完成业务的时候,只需要调用这些对象相应的功能,不需要知道具体实现的过程,这样可以提高代码的重用性,方便继承扩展。