美文网首页
重构总结

重构总结

作者: CaesarXI | 来源:发表于2020-11-27 09:52 被阅读0次
const res = a > b ? a - b : 0;
const res = Math.max(0, a - b); //性能更优

如果判断很多的话, 首先考虑通过配置项解决如字典, 其次使用switch case, 因为switch case 只做一次判断, ifelse最好的情况下做一次判断,最坏的情况下就是n次判断。

如果很多地方都在对一个变量进行操作,可以考虑将操作和变量抽象为一个类来处理,便于统一开发和维护。例如有一个电话号码mobile的变量,很多地方需要对它做校验,而且每个人都写了自己的校验方法,如果要修改校验的话就要找出每个地方,所以抽象出来更易于维护和管理。

class Mobile {
    _mobile: string;
    
    constructor() {
        this._mobile = '';
    }
    
    get mobile () {
        return this._mobile;
    }
    set mobile (mobile) {
        this._mobile = mobile;
    }
    
    isValide = () => {
        return (/^(?:13d|15[89])-?d{5}(d{3}|*{3})$/.test(this.mobile));
    }
}

函数参数粒度越细使用上下文空间越大,即范围越广,反之则越小。在如下例子中可以看到a函数被限定于只能在类customer作为参数时使用,而b函数则不限于某个类,只要传入stateCode就可以使用。

function a_inNewEngland (customer) {
    const stateCode = customer.address.state;
    return ["MA", "CT"].includes(stateCode);
}

function b_inNewEngland (stateCode) {
    return ["MA", "CT"].includes(stateCode);
}

相关文章

  • iOS 基于 MVC 的项目重构总结

    iOS 基于 MVC 的项目重构总结 iOS 基于 MVC 的项目重构总结

  • 《重构》一书总结(二)

    《重构》一书总结(二) 重构的重点,在于对那些代码进行重构,如果重构不当,反而适得其反。 重构代码终结如下 1.D...

  • iOS 从微型的demo到真正的项目

    本文归纳总结,重构中

  • 《重构》一书经典总结(一)

    《重构》一书经典总结(一) 为何重构 1.重构改进软件设计2.重构使软件更容易理解3.重构提交稿编程速度4.重构帮...

  • 2017-2018总结 && 计划 && 建议

    2017-2018总结 && 计划 && 建议 总结:2017已启动的技术重构和改进:移动端重构了大量的基础组件(...

  • 重构总结

    最近对一个老的系统进行重构,有些感触,写出来做个总结 重构的原则保证和第三方的交互接口没有变化,保证新系统上线后,...

  • 重构总结

    如果判断很多的话, 首先考虑通过配置项解决如字典, 其次使用switch case, 因为switch case ...

  • 第三部分:Idea重构总结

    第三部分:Idea重构总结 idea重构功能非常强大,特别是在java web方面,甚至能够重构html/css/...

  • 重构,第一个案例(C++版)——最初的程序

    之前写过一篇文章找出那些代码里的坏味道吧——《重构》笔记(一)。简单总结了一下《重构》这本书中的重点以及作者总结的...

  • 重构总结回顾

      该文章是对《重构-改善既有代码的设计》一书的总结回顾,以时刻鞭策自己不断提高代码质量,同时供大家借鉴改善。废话...

网友评论

      本文标题:重构总结

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