机房重构之接口层的好处

来源:互联网 发布:电脑软件怎么安装 编辑:程序博客网 时间:2024/06/05 23:08

        机房敲完了,就开始总结各个层,各个设计模式的应用与好处,其实这样顺序是错误的,应该先知道它的原理,再去应用,这样就知道为什么要用了。总结到接口层时,发现接口层,除了多写了代码,没发现什么好处,为什么不直接写D层方法那,知道接口好处后,才发现,不是因为不知道接口的好处而不知道接口的好处,好处是怎样体现的那,是通过代码,而我发现我的代码,尤其是类,写的太多,也可以说没有理解为什么用接口,所以代码中没有体现,自然接口的好处没用到。


说到接口,首先说一下说一下抽象类与接口的区别:

1.类是对象的抽象,抽象类是对类的抽象,对类整体的抽象;接口是对行为的抽象,对类局部的抽象

2.对于一些相似的类对象,用继承抽象类;行为跨越不同类时,可使用接口

3.抽象类是从子类中发现了公共的东西,泛化出父类,然后子类继承父类;接口是根本不知道子类的存在,方法如何实现还不确定,预先定义


在我理解内,机房重构接口的作用感觉就有上面提到的1、2条区别

1.接口是行为的抽象,且类必须实现接口的所有方法

         其实我们D层实现的主要方法就是对数据库的增删改查(行为),所以只需定义4个接口,然而我的接口写了好多,为什么是4个那,因为方法是4个,而类要实现接口的话,就必须实现接口的所有方法,所以把增删改查分别写成接口。

2.行为是跨越不同类的,也就是说当不同的类有相同的行为时,可把该行为抽象成接口

        猫可以“看路”,人可以“看路”,但猫和人完全是不相干的类,但他们有相同的行为“看路”,所以就把“看路”抽象为一个接口,供不同的类使用

反射到我们七层,有注册用户、有设置基础数据等不同的类,而他们用到共同的行为“增删改查”,所以这时用到了接口


当然还体现了别的好处

3.多态

        D层去实现接口,接口知识定义了一个具体的方法名,而具体怎么实现的是D层做的工作,而D层中不同的类又会调用同样的接口,即实现不同的接口,而方法体不同,即具体的实现方法,这时就体现了多态

4.开放封闭,利于扩展多变的情况

        如果我后期发现我还有功能没实现,需要添加新功能,只需在D层添加类,该类实现相应的接口,而无须该接口,这样只需在Factory层稍微带动一下返回的接口类型即可(这没有完全符合开放封闭原则,但也有体现)

5.便于不同开发人员合作

如一个项目较复杂,需要多个人去写类,而每个类都用到了“增删改查”行为,这时就对他们进行了一种约束,让他们都去继承接口,这样也防止了功能丢失的情况,另一方面别的程序员肯定会用到该方法,当他用该方法时,只需调用一下接口即可。


【总结】

不要做一名码农!


1 0
原创粉丝点击