【问题标题】:How can I prevent violating the open closed principle when using data from a database使用数据库中的数据时如何防止违反开闭原则
【发布时间】:2020-11-21 07:12:16
【问题描述】:

我正在从按以下方式格式化的数据库中获取 json 数据

{
    name:{
        type:string,
        value:'test',
    },
    age:{
        type:number,
        value:6,
    },
    hairColor:{
        type:color,
        value:'255,255,255',
    },
    font:{
        type:fontFamily,
        value:'Arial',
    }
}

所以在我的前端,我必须在某种 switch 语句中检查类型是什么,以便知道我应该呈现什么 UI 元素。这违反了开闭原则,因为当我向数据库添加新类型时,我必须去修改 switch 语句。

我该如何处理?

【问题讨论】:

    标签: open-closed-principle


    【解决方案1】:

    为什么不将 default 用于所有其他类型。应遵循开闭原则。 例如:

    switch(type){
          case A:
           return $TRUE
          default:
           return $FALSE
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-16
      • 2023-04-06
      • 2018-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-23
      • 2010-12-20
      相关资源
      最近更新 更多