所有的接口,基本上目的就是降低耦合度,以屏蔽具体的底层实现。
当底层实现变动时,可以不用修改上层Service的实现,就可以很好的兼容底层的变动。
总之一句话,接口对外封装过程,对内提供统一标准。
比如吧,我有一个接口,里面定义了增删改三个方法,现在让你去实现这个接口来操作oracle的数据库,突然有一天我突发奇想,决定要更换底层的数据库为mysql,那么我现在就可以让第三个人来实现这个接口来操作mysql数据库,不管是何种数据库,上层调用我这个接口的代码不需要任何改动,这就是标准,除非接口(标准)变了,才会影响到上层的代码调用。
把数据库跟上层应用做个隔离
当底层实现变动时,可以不用修改上层Service的实现,就可以很好的兼容底层的变动。
总之一句话,接口对外封装过程,对内提供统一标准。
比如吧,我有一个接口,里面定义了增删改三个方法,现在让你去实现这个接口来操作oracle的数据库,突然有一天我突发奇想,决定要更换底层的数据库为mysql,那么我现在就可以让第三个人来实现这个接口来操作mysql数据库,不管是何种数据库,上层调用我这个接口的代码不需要任何改动,这就是标准,除非接口(标准)变了,才会影响到上层的代码调用。
把数据库跟上层应用做个隔离