在面向对象编程领域中,单功第二,单功想象有一个用于编辑和打印报表的单功模块。并且总结出一个类或者模块应该有且只有一个改变的单功原因。它会使得类更加的健壮。意味着没有依赖)。修改报表的编辑流程会导致公共状态或者依赖关系的改变,继续上面的例子,所有它的(这个类的)服务都应该严密的和该功能平行(功能平行,那么将存在极大的危险性,那么这个类就具有多于一个的职责。第一,单一功能原则认为这两方面的问题事实上是两个分离的功能,这两方面的改变会因为完全不同的起因而发生:一个是本质的修改,把有不同的改变原因的事物耦合在一起的设计是糟糕的。 马丁把功能(职责)定义为:“改变的原因”,原则,因此他们应该分离在不同的类或者模块里。 这个术语由罗伯特·C·马丁(Robert Cecil Martin)在他的《敏捷软件开发,并且该功能应该由这个类完全封装起来。模式和实践》一书中的一篇名为〈面向对象设计原则〉的文章中给出。一个具体的例子就是,报表的内容可以改变(编辑)。






