package com.cheng.zenofdesignpatterns.principle.srp;
import android.view.View;
import com.cheng.zenofdesignpatterns.ZoDPChapterBaseActivity;
public class ZoDPSingleResponsibilityPrincipleActivity extends ZoDPChapterBaseActivity {
@Override
protected void initData() {
mTitleTV.setText("单一职责原则");
String content = "定义:\nThere should never be more than one reason" +
" for a class to change.\n" +
"应该有且仅有一个原因引起类的变更。" +
"\n职责:业务逻辑,或者对象能够承担的责任,并以某种行为方式来执行。" +
"\n\n单一职责原则的好处:\n" +
"- 类的复杂性降低,实现什么职责都有清晰明确的定义\n" +
"- 可读性提高,复杂性降低,那当然可读性提高了\n" +
"- 可维护性提高,可读性提高,那当然更容易维护了\n" +
"- 变更引起的风险降低,变更是必不可少的,如果接口的单一职责做得好," +
"一个接口修改只对相应的实现类有影响,对其他的接口无影响,这对系统的" +
"扩展性、维护性都有非常大的帮助\n\n" +
"注意\n" +
"单一职责原则提出了一个编写程序的标准,用‘职责’或‘变化原因’来衡量接口" +
"或类设计得是否优良,但是‘职责’和‘变化原因’,都是不可度量的,因项目而" +
"异,因环境而异。\n\n" +
"最佳实践:\n" +
"对于单一职责原则,我的建议是接口一定要做到单一职责,类的设计尽量做到" +
"只有一个原因引起变化。";
mContentTV.setText(content);
}
public void onClick(View v) {
}
/**
* 以电话类为例分析单一职责原则
* 电话通话的时候有4个过程发生:拨号、通话、回应、挂机
* 涉及的职责:
* 一个是协议管理,一个是数据传输
*/
}