gpt4 book ai didi

java - 是否值得创建自定义注释来表明方法只是有助于提高可读性?

转载 作者:行者123 更新时间:2023-12-02 11:50:37 27 4
gpt4 key购买 nike

目前正在使用 Spring,我一直在学习可用于提高代码可读性的方法,其中一个示例是用易于理解的方法调用替换复杂的条件。例如:

private void myMethod(){
//Bad
if(userAge < MIN_AGE){
//logic
}

//Good
if(userTooYoung()){
//logic
}
}

private boolean userTooYoung(){
return userAge < MIN_AGE;
}

我的问题是:是否值得创建一个自定义注释来表明 userTooYoung 只是为了提高可读性?例如:

@Assistant
private boolean userTooYoung(){
return userAge < MIN_AGE;
}

我真的想不出@Assistant注释可以提供的另一个功能,因此,它引出了一个问题:它真的值得吗?

编辑:我一直在研究 @Assistant 注释的想法,并提出以下建议:

定义:

@Retention(RetentionPolicy.SOURCE)
@Target(ElementType.METHOD)
public @interface Assistant {

enum With {
CONDITIONAL_LOGIC, CONSTRUCTION_LOGIC
}

With help() default With.CONDITIONAL_LOGIC;
}

用法:

@Assistant(help = Assistant.With.CONDITIONAL_LOGIC)

最佳答案

您正在征求意见。在某种程度上,我同意 tsolakp 的观点;太多带有模糊名称的注释会降低可读性。同时,如果您需要在多个位置标记您所做的事情并且您正在做的事情并不明显,那么仅用于可读性的自定义注释确实有意义。例如,Google Guava 提供了@VisibleForTesting 注释。当应该是私有(private)方法的默认范围被使用时,它可以被单元测试。当客户需要彻底的单元测试时,我经常使用它。

就您的情况而言,它并没有增加任何清晰度,而且该名称也没有多大意义。

关于java - 是否值得创建自定义注释来表明方法只是有助于提高可读性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47895603/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com