DH03-单一职责原则

模式简介

就一个类而言,应该仅有一个引起它变化的原因。不要存在多于一个导致类变更的原因。遵循单一职责原则。分别建立两个类T1和T2,使T1完成P1功能,T2完成P2功能。当修改T1时,不会使职责P2发生故障风险。

遵循单一职责原的优点有:

  • 可以降低类的复杂度,一个类只负责一项职责,其逻辑肯定要比负责多项职责简单的多;
  • 提高类的可读性,提高系统的可维护性;
  • 变更引起的风险降低,变更是必然的,如果单一职责原则遵守的好,当修改一个功能时,可以显著降低对其他功能的影响。

单一职责原则不只是面向对象编程思想所特有的,只要是模块化的程序设计,都适用单一职责原则。

类图分析

程序代码

#include <iostream>
#include <string>
using namespace std;

class Reptilian
{
public:
    void run(string reptilian)
    {
        cout<< reptilian << " can run" << endl;
    }
};
class Bird
{
public:
    void fly(string bird)
    {
        cout <<bird<< " can fly" << endl;
    }
};

int main()
{
    Reptilian reptilian;
    reptilian.run("dog");
    reptilian.run("cat");

    Bird bird;
    bird.fly("eagle");
    bird.fly("sparrow");
    system("pause");
    return 0;
}

参考资料

设计模式六大原则:http://www.uml.org.cn/sjms/201211023.asp

设计模式6大原则之-单一职责原则:http://blog.csdn.net/yuluows/article/details/7013343

posted @ 2016-04-13 19:55  弦断  阅读(145)  评论(0编辑  收藏  举报