加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

小鸦 - golang defer 解决"职责统一"的问题

发布时间:2020-12-16 19:09:46 所属栏目:大数据 来源:网络整理
导读:定义 defer,意思: 推迟 作用 在函数返回时,执行的动作 解决问题 解决了编程过程中, 如何延迟执行代码 的问题. 对于我而言, 延迟执行的根本需求是 : 职责的统一 . 代码集中化处理意味着修改时,可以避免更少的错误. 常见defer的例子,就是IO的打开与关闭,实质上

定义

defer,意思: 推迟

作用

在函数返回时,执行的动作

解决问题

解决了编程过程中,如何延迟执行代码 的问题.

对于我而言,延迟执行的根本需求是 : 职责的统一. 代码集中化处理意味着修改时,可以避免更少的错误.

常见defer的例子,就是IO的打开与关闭,实质上这是IO的同一个职责,然而该职责的代码分散到方法的前与后,导致代码不集中.

Java如何延迟执行

(实际上没人这样做吧? 只是为了职责统一而特意引入)

class A {
    List<Method> list = new LinkedList();

    public void doA(){
        //...dosth
        list.put(new method{
            ///...
        });

        //其他操作

        //遍历释放
        for(int i=0;i<list.size();i++) {
        list.get(i).dosth();
        }

    }

}

好处

  • 删除代码时候,不会怕漏掉
  • 代码能更好的提取 extract method

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读