任务拆分、分配的前置条件:代码充分解耦

面向对象.png

OOP阶段

两个目标.png
  • 任务分配
    任务分配过程中,我们肯定要做到开发人员并行工作,相互之间没有影响,高内聚、低耦合,不能等一个开发完之后,再开发下一个。这里需要一个前提条件:代码解耦。
    如果代码不解耦,相互之间有引用,耦合危害,看下面这个例子:
    A a=new A();
    B b=new B(a);
    b.invoke();
    a.callback();
   A类中我们有个小功能要实现,自然而然的我们把这个功能独立出来B,然后调用该方法,最后A再回调。
void  invoke() {
        param="hard code1";
        //run
        a.callback();
    }
这时候又来了一个C类,好吧。。。
 C c=new C();
    B b=new B(c);
    b.invoke();
    c.callback();
void  invoke() {
两个判断,还能接受,如果还有D 、E  、F。。。疯了
        if(a!=null){
            param="hard code1";
            //run
            a.callback(); 
        }
        if(c!=null){
            param="hard code1";
            //run
            c.callback();
        }
    }

类解耦的几种方式

捕获2.PNG

在上一篇的需求中,像GPS、Sensor、序列化这些都是变化的,先不要分配下去,可以在外面进行配置,告诉它用什么。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容