优化:基于阿里巴巴 Java 开发手册(黄山版)优化常量及包命名

1.编程规约>常量定义>第4条:
【推荐】不要使用一个常量类维护所有常量,要按常量功能进行归类,分开维护。
说明:大而全的常量类,杂乱无章,使用查找功能才能定位到要修改的常量,不利于理解,也不利于维护。
正例:缓存相关常量放在类 CacheConsts 下;系统配置相关常量放在类 SystemConfigConsts 下。
2.编程规约>常量定义>第5条:
【推荐】常量的复用层次有五层:跨应用共享常量、应用内共享常量、子工程内共享常量、包内共享常
量、类内共享常量。
  1)跨应用共享常量:放置在二方库中,通常是 client.jar 中的 constant 目录下。
  2)应用内共享常量:放置在一方库中,通常是子模块中的 constant 目录下。
  反例:易懂常量也要统一定义成应用内共享常量,两个程序员在两个类中分别定义了表示“是”的常量:
  类 A 中:public static final String YES = "yes";
  类 B 中:public static final String YES = "y";
  A.YES.equals(B.YES),预期是 true,但实际返回为 false,导致线上问题。
  3)子工程内部共享常量:即在当前子工程的 constant 目录下。
  4)包内共享常量:即在当前包下单独的 constant 目录下。
  5)类内共享常量:直接在类内部 private static final 定义。
This commit is contained in:
2023-03-03 22:34:19 +08:00
parent 94be1f9553
commit 1257a4bc35
19 changed files with 61 additions and 61 deletions

View File

@@ -30,7 +30,7 @@ import org.springframework.data.domain.Sort;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.StrUtil;
import top.charles7c.cnadmin.common.consts.CharConstants;
import top.charles7c.cnadmin.common.constant.CharConsts;
/**
* 排序查询条件
@@ -62,10 +62,10 @@ public class SortQuery implements Serializable {
}
List<Sort.Order> orders = new ArrayList<>(sort.length);
if (StrUtil.contains(sort[0], CharConstants.COMMA)) {
if (StrUtil.contains(sort[0], CharConsts.COMMA)) {
// e.g "sort=published,desc&sort=title,asc"
for (String s : sort) {
List<String> sortList = StrUtil.split(s, CharConstants.COMMA);
List<String> sortList = StrUtil.split(s, CharConsts.COMMA);
Sort.Order order =
new Sort.Order(Sort.Direction.valueOf(sortList.get(1).toUpperCase()), sortList.get(0));
orders.add(order);