OOP阶段
- 任务分配
任务分配过程中,我们肯定要做到开发人员并行工作,相互之间没有影响,高内聚、低耦合,不能等一个开发完之后,再开发下一个。这里需要一个前提条件:代码解耦。
如果代码不解耦,相互之间有引用,耦合危害,看下面这个例子:
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();
}
}
类解耦的几种方式
在上一篇的需求中,像GPS、Sensor、序列化这些都是变化的,先不要分配下去,可以在外面进行配置,告诉它用什么。。。