`
yourenyouyu2008
  • 浏览: 282246 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

重构记录

 
阅读更多

2013-12-19 方法命名:方法名称体现方法的功能,与谁调用无关

问题描述:磨课活动中有些步骤必须全部活动成员都操作才算完成,由于活动成员中存在一些无效用户导致该步骤无法完成(这些无效成员是不会执行操作的),活动管理员发现这些无效用户并删除后,逻辑上这个步骤应该算是完成了,但是完成标准的设置是在用户操作的时候判断的,因为删除用户后没有进行该步骤的操作,所以不会去判断完成标志。

 

增加了一个删除用户后重新计算完成标志的方法

public void updateFinishedWhenDeleteUser(Integer actId),当删除活动成员时调用该方法。

该方法的功能就是重新计算各步骤是否真正完成。

    @Async//删除用户后通过事件调用
    public void onApplicationEvent(DeleteActUserEvent event) {
        actStepService.updateFinishedWhenDeleteUser((Integer)event.getSource());
    }

 

后来发现之前的历史数据没法自动完成,需要通过一个操作重新触发,这时该方法的名称就不太合适了,因为和删除用户没有关系。方法功能的本意是重新计算,而不是什么时候重新计算。

 

//对历史数据进行处理,这时候updateFinishedWhenDeleteUser名称明显不合适

List<Activity> allacts=activityService.selectActivitys(formIds.toArray(new Integer[0]));
        for(Activity act:allacts){
            actStepService.updateFinishedWhenDeleteUser(act.getId());
        }

将方法名称重构成updateFinishedStatus,上面两种情况的调用改成如下形式。

 

        List<Activity> allacts=activityService.selectActivitys(formIds.toArray(new Integer[0]));
        for(Activity act:allacts){
            actStepService.updateFinishedStatus(act.getId());
        }

 

    @Async
    public void onApplicationEvent(DeleteActUserEvent event) {
        actStepService.updateFinishedStatus((Integer)event.getSource());
    }

分享到:
评论

相关推荐

    Android重构记录及其模块化

    项目人群:百万日活整体大小:类数量未记,Size500+M这几天正在重构公司的项目,因为本月16日看项目源码时发现项目的内部架构极其冗余(4年前的项目,延伸至今),不管是从业务的拓展还是现有架构的维护上的体验都...

    重构-改善既有代码的设计 中文版.pdf

    5.1 重构的记录格式 5.2 寻找引用点 5.3 这些重构准则有多成熟 第6章 重新组织你的函数 6.1 Extract Method(提炼函数) 6.2 Inline Method(将函数内联化) 6.3 Inline Temp(将临时变量内联化) 6.4 Replace Temp ...

    python学习全部记录。正在重构.zip

    python学习全部记录。正在重构

    重构:改善既有代码的设计.[美]Martin Fowler.epub【文字版手机格式】

    5.1 重构的记录格式 5.2 寻找引用点 5.3 这些重构手法有多成熟 第6章 重新组织函数 6.1 Extract Method(提炼函数) 6.2 Inline Method(内联函数) 6.3 Inline Temp(内联临时变量) 6.4 Replace Temp with Query...

    重构:改善既有代码的设计(中文高清版)

    5.1 重构的记录格式103 5.2 寻找引用点105 5.3 这些重构手法有多成熟106 第6章 重新组织函数109 6.1 ExtractMethod(提炼函数)110 6.2 InlineMethod(内联函数)117 6.3 InlineTemp(内联临时变量)119 6.4 ...

    重构-改善既有代码的设计

    5.1 重构的记录格式 103 5.2 寻找引用点 105 5.3 这些重构手法有多成熟 106 第6章 重新组织函数 109 6.1 Extract Method(提炼函数) 110 6.2 Inline Method(内联函数) 117 6.3 Inline Temp(内联...

    重构-改善既有代码的设计(中文版)

     Replace Record with Data Class 用数据类代替记录   *ReplaceType Code with Class 用类代替类型码   Replace Type Code with Subclasses 用子类代替类型码   Replace Type Code with State/Strategy用...

    重构-改善既有代码的设计+中文版

     Replace Record with Data Class 用数据类代替记录   *ReplaceType Code with Class 用类代替类型码   Replace Type Code with Subclasses 用子类代替类型码   Replace Type Code with State/Strategy用...

    重构:改善既有代码的设计(中文版).

    5.1 重构的记录格式103 5.2 寻找引用点105 5.3 这些重构手法有多成熟106 第6章 重新组织函数109 6.1 ExtractMethod(提炼函数)110 6.2 InlineMethod(内联函数)117 6.3 InlineTemp(内联临时变量)119 6.4 ...

    重构-改善既有代码的设计 中文版

    5.1 重构的记录格式 5.2 寻找引用点 5.3 这些重构准则有多成熟 第6章 重新组织你的函数 6.1 Extract Method(提炼函数) 6.2 Inline Method(将函数内联化) 6.3 Inline Temp(将临时变量内联化) 6.4 Replace Temp ...

    《重构改善既有代码的设计(2010年版)》(Martin Fowler[美] 著,熊节 译)

    5.1 重构的记录格式103 5.2 寻找引用点105 5.3 这些重构手法有多成熟106 第6章 重新组织函数109 6.1 ExtractMethod(提炼函数)110 6.2 InlineMethod(内联函数)117 6.3 InlineTemp(内联临时变量)119 6.4 Replace...

    重构_改善既有代码的设计[高清版]中文版

     Replace Record with Data Class 用数据类代替记录   *ReplaceType Code with Class 用类代替类型码   Replace Type Code with Subclasses 用子类代替类型码   Replace Type Code with State/Strategy用...

    《重构改善既有代码的设计第2版》第1章 重构,第一个示例重构过程

    《重构改善既有代码的设计第2版》第1章 重构,第一个示例,演示重构过程,从初识代码到重构结束有git详细记录

    重构_改善既有代码的设计.pdf

    5.1 重构的记录格式103 5.2 寻找引用点105 5.3 这些重构手法有多成熟106 第6章 重新组织函数109 6.1 ExtractMethod(提炼函数)110 6.2 InlineMethod(内联函数)117 6.3 InlineTemp(内联临时变量)119 6.4 Replace...

    ZeromaXHe#BlogBackup#【笔记】《重构:改善既有代码的设计》第5章-重构列表1

    第5章 重构列表5.1 重构的记录格式每个重构方法都有如下五个部分:概要(summary)简单介绍此重构方法的适用情景,以及它所做的事情。动机(motivati

    重构 改善既有代码的设计

     Replace Record with Data Class 用数据类代替记录   *ReplaceType Code with Class 用类代替类型码   Replace Type Code with Subclasses 用子类代替类型码   Replace Type Code with State/Strategy用...

    重构_改善既有代码的设计

     5.1 重构的记录格式103  5.2 寻找引用点105  5.3 这些重构手法有多成熟106 第6章 重新组织函数  6.1 ExtractMethod(提炼函数)110  6.2 InlineMethod(内联函数)117  6.3 InlineTemp(内联临时变量)119  ...

    重构——改善既有代码的设计

     Replace Record with Data Class 用数据类代替记录   *ReplaceType Code with Class 用类代替类型码   Replace Type Code with Subclasses 用子类代替类型码   Replace Type Code with State/Strategy用...

    重构,改善既有代码的设计

     Replace Record with Data Class 用数据类代替记录   *ReplaceType Code with Class 用类代替类型码   Replace Type Code with Subclasses 用子类代替类型码   Replace Type Code with State/Strategy用...

Global site tag (gtag.js) - Google Analytics