代码精进之路~自明的代码

中间变量

Matcher matcher = headerPattern.matcher(line);
if (matcher.find()) {
    headers.put(matcher.group(1), matcher.group(2));
}

优化后

Matcher matcher = headerPattern.matcher(line);
if (matcher.find()) {
    String key = matcher.group(1);
    String value = matcher.group(2);
    headers.put(key, value);
}

设计模式语言

        下面是一个典型pipeline处理方式,责任链在处理该问题上是一个很好的选项,FilterChain 这个名字非常恰当地表达出了意图,Chain 表示用的是责任链模式,Filter 表示用来进行过滤。

FilterChain filterChain = FilterChainFactory.buildFilterChain(
                NoEmailAddressFilter.class,
                EmailUnsubscribeFilter.class,
                EmailThreeDayNotRepeatFilter.class);


// 具体的Filter
public class NoEmailAddressFilter implements Filter {

    public void doFilter(Object context, FilterInvoker nextFilter) {
        Map<String, Object> contextMap = (Map<String, Object>) context;
        String email = ConvertUtils.convertParamType(contextMap.get("email"), String.class);
        if (StringUtils.isBlank(email)) {
            return;
        }

        nextFilter.invoke(context);
    
    }

}

注释不要复述功能

public synchronized void setFormatter(Formatter newFormatter) {
    checkPermission();
    // Check for a null pointer.
    newFormatter.getClass();
    formatter = newFormatter;
}

注释要解释背后意图

try {
    // 这里等待2 秒.
    Thread.sleep(2000L);
} catch (Exception e) {
    LOGGER.error(e);
}

优化后

try {
    // 等待2 秒,为了等待关联系统处理结果
    Thread.sleep(2000L);
} catch (Exception e) {
    LOGGER.error(e);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值