其他分享
首页 > 其他分享> > 【软件质量】修正瑞士军刀枚举类

【软件质量】修正瑞士军刀枚举类

作者:互联网

有这样一个枚举类,名称为瑞士军刀:

public enum SwissArmyEnum {
    CREATE,
    READ,
    UPDATE,
    DELETE,
    FRISTNAME,
    LASTNAME,
    DATEOFBIRTH,
    STATUS_OK,
    STATUS_ERROR,
    STATUS_FILE_NOT_FOUND,
    SMALL,
    MEDIUM,
    LARGE
}

这个枚举类看起来总是觉得有些别扭,对吧?那它到底为什么不好呢?

其实是违背了面向对象设计SOLID原则中的S,即单一职责原则。
单一职责原则指出,一个类应该只有一个职责,并且有且仅有一个或一类改变的原因。

此枚举类包含很多不同领域的枚举值,应该被分解为若干个不同的枚举类:

public enum Crud {
    CREATE,
    READ,
    UPDATE,
    DELETE
}
public enum PersonAttributes {
    FRISTNAME,
    LASTNAME,
    DATEOFBIRTH
}
public enum Status {
    STATUS_OK,
    STATUS_ERROR,
    STATUS_FILE_NOT_FOUND
}
public enum Sizes {
    SMALL,
    MEDIUM,
    LARGE
}

标签:STATUS,enum,READ,修正,枚举,瑞士军刀,public
来源: https://blog.csdn.net/weixin_43896318/article/details/115142624