美文网首页
默认值不要瞎设置快别坑自己了

默认值不要瞎设置快别坑自己了

作者: 招财小能手 | 来源:发表于2018-06-28 11:58 被阅读57次

Bug记录:

表现:

图形设置界面在特定的设备上黑屏

问题定位:

只有在默认设置为 Ultra High 的设备上会出现这个问题,最后发现是早期设置默认值的时候,直接用当前preset的等级设置了feature的默认等级。但是preset的等级现在有Ultra High了,而feature最高只有High,在读取对应show name的时候读不到值了。

问题出现原因:

  • 早期设计阶段,preset和feature的等级使用了同一个枚举,当时都是高中低三个档位,但是后期preset出现更高的设置了。本来这两个东西的含义就不一样,不应该为了省事儿使用同一个,后期因为这个偷懒而改了好几次bug。而上次修改又只是通过Attribute把同一个枚举强行分成两个用,结果还是由于下一个自己的SB设计出事儿了。
  • 默认值的设置:这是一个典型给自己埋雷的设计,我在给各项feature设置默认值的时候,用了当前的preset值。也就是如果当前是超高配置,那么对应各项的feature就是超高,但是事实上,feature的等级根本没有超高。早期这个思路看上去没问题,但是依旧是自己默认了随时可能变化的规则。

反思&设计原则:

  • 关于默认值的设置:使用无意义的、一眼能暴露问题的默认值
  • 关于偷懒:如果意义不一致,即使在现阶段可以共用,也不能使用。需求变化快如狗,不要自己瞎猜需求
  • 关于早期遗留问题:可拓展的系统在后期拓展的时候最好检查一下早期设计,毕竟最开始可能有很多问题想不到或者单纯的遗忘了

相关文章

  • 默认值不要瞎设置快别坑自己了

    Bug记录: 表现: 图形设置界面在特定的设备上黑屏 问题定位: 只有在默认设置为 Ultra High 的设备上...

  • se6函数扩展

    es6函数可以设置默认值,如下: 函数设置默认值时有这么几个限制: 参数设置默认值时,不能有重复的值,如: 设置了...

  • 断舍离第三次打卡

    慎言 不要瞎热情 认清自己 不要瞎指导

  • magento二次开发 - 设置后台配置的默认值

    设置了系统的后台配置选项后,可以在config.xml中设置后台配置的默认值 设置配置项的默认值 其中,app_o...

  • PT5的默认值运算符

    1、模板变量的默认值 自定义变量设置默认值; 系统变量设置默认值; 变量的函数与默认值可以同时使用。 index....

  • vue-resource 配置

    使用全局配置设置默认值。 在 Vue 组件选项中设置默认值。 Webpack/Browserify 在 packa...

  • mysql datetime类型设置默认值

    datetime在默认值处,设置默认值:CURRENT_TIMESTAMP

  • ES6学习第六节:Function扩展

    函数参数默认值 与解构赋值默认值结合使用 参数默认值的位置 函数的length属性 作用域 一旦设置了参数的默认值...

  • 函数参数默认值

    基础用法 使用默认值语法设置函数参数的默认值。

  • go语言

    【译】GOPATH 的默认值 "翻译自 Go 语言作者的博客。这只是设置了 GOPATH 默认值,GOROOT 还...

网友评论

      本文标题:默认值不要瞎设置快别坑自己了

      本文链接:https://www.haomeiwen.com/subject/qvaaqftx.html