設計原則の単一職能原則


           

  :
                          ,               ,              。          ,               ,          。
  :                      。

Bad Example:  :
    1、                 ,          。
    2、      string,   html     。

// single responsibility principle - bad example
interface IEmail {
    public void setSender(String sender);
    public void setReceiver(String receiver);
    public void setContent(String content);
}
class Email implements IEmail {
    public void setSender(String sender) {// set sender; }
    public void setReceiver(String receiver) {// set receiver; }
    public void setContent(String content) {// set content; }
}
Good Example:  :
    1、           email 
    2、    content    content 。
// single responsibility principle - good example
interface IEmail {
    public void setSender(String sender);
    public void setReceiver(String receiver);
    public void setContent(IContent content);
}
interface Content {
    public String getAsString(); // used for serialization
}
class Email implements IEmail {
    public void setSender(String sender) {// set sender; }
    public void setReceiver(String receiver) {// set receiver; }
    public void setContent(IContent content) {// set content; }
}