Java 代码优化:提取重复代码,提高可读性和可维护性
可以将重复的代码提取出来,将不同的部分作为参数传入。可以尝试如下的优化:
switch (examineDataSource) {
case BASE_DATA:
return unionAllRelationAppraisees(findExamineBasicAppraisees(appraiseesConfig, activityId),
(g) -> findExamineBasicByEmpGroup(g, activityId), empGroupId);
case EXAMINER_APPRAISEES_DATA:
return unionAllRelationAppraisees(findEvaluationAppraisees(appraiseesConfig, activityId),
(g) -> findEvaluationAppraiseesByEmpGroup(g, activityId), empGroupId);
default:
break;
}
private ReturnType unionAllRelationAppraisees(List<Appraisee> appraisees, Function<String, List<Appraisee>> findAppraiseesByEmpGroup, String empGroupId) {
// 其他代码逻辑
// ...
return returnType;
}
private List<Appraisee> findExamineBasicAppraisees(AppraiseesConfig appraiseesConfig, String activityId) {
// 具体实现
// ...
return appraisees;
}
private List<Appraisee> findExamineBasicByEmpGroup(String empGroupId, String activityId) {
// 具体实现
// ...
return appraisees;
}
private List<Appraisee> findEvaluationAppraisees(AppraiseesConfig appraiseesConfig, String activityId) {
// 具体实现
// ...
return appraisees;
}
private List<Appraisee> findEvaluationAppraiseesByEmpGroup(String empGroupId, String activityId) {
// 具体实现
// ...
return appraisees;
}
通过将相同的代码提取出来,然后根据参数的不同来调用不同的方法,可以减少代码冗余,并提高代码的可读性和可维护性。
原文地址: https://www.cveoy.top/t/topic/qDEu 著作权归作者所有。请勿转载和采集!