?????????????????????
???????????? ???????[ 2013/2/26 9:38:06 ] ????????
?????????????????λ????????“д??????д??????? ??д?????????” ????????????????????????仰?????????????????????????????????????????????д???????????д?????????????????????????????????????????
?????????????????????????????о????????д??????鼮????????????????????????????д???????????д??????????????????? —— ??Щ??????????????????????????????????????κο??е???????????
?????????????????????????????????????????????????????????????????????????????????????????д????????????????????? ??д??????????????????????????????????????????????????????????顣
??????????
?????? Andrew ????? ?????? ??????????????????????????
???????? ?????????? 1999 ???????????????? Martin Fowler ???????????? Refactoring: Improving the Design of Existing Code?????????????д?????????????????????????з?????????????????????????????????????????????????????????????????????????????????????????????????????д??????????е????????????????????????????????????д??????????????????????
?????????
???????????????????????? ??????????????????????????????????д?????????????????????????????????????????????? ??????????????????????????????????д ????????????
??д?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
????????????
???????????“?????????????????y?????????” ??δ????????????????????????????????е????????????????????д??????????????????д??????????????????????????? —— ???????????????????????????????????м????????? “???????” ???????????????任??????????????????????????????????е??????????????????????????????????????????????????????????????????????????????????
???????п???????ж???????????????????????????????????????? ???????????????У???????????????????????????????????????????????????????????????????????????????????????ж??????????????????????÷????????????????
???????в?????????
????????д?????????????????ū????????????????????????????????????????Щ?????? ???????????????????????????????????????????????ú???????????п?????????????????С???????????д???????????????????????????????С?????????????????????ж???????????????????????棬????????????????????????в?????????
?????????
Martin Fowler ???????????????У???????????μ??????????????????????????????????????????Ч????????????????????Extract Method?? ????????????У??????????????????????????????????????????塣??????????????屻?·??????????棬??? 1 ?? UML ??????
? 1. ????????????
?????????????????????????
???????????????????????????????
?????????????????е???????????????????
??????????
???????????????????????????????????????????????????????????????????????????????????·?????????????????????????? ???????Щ·????????????????帴????????
???磬?????????????? PMD ???????????????????????????????????????????????????н??????????????? 2 ?????
? 2. ?????????? 23??
????????????????????????????????????????????????????????????????????????????????????????? ?ο???????????????????в???????????л??л???updateContent() ???????и????????????????????????????з???????????????Щ ?????
??????棬?????????????д???????? updateContent() ?????е? 23 ??·???????????????????????????д???? 23 ????????????????д???????????????????????????е?? 18 ??????????????????????
С????
?????????????????е?? 18 ????????????ж?????????????????а?????????????????????????????????????????????????????????????????С?????????????????????С????Σ???????????????·?????
???磬updateContent() ?????????????С?????????????????? String?????嵥 1 ???????????????????????
?嵥 1. ?????????????????????
//...other code above
String retstatus = null;
if ( lastChangedStatus != null && lastChangedStatus.size() > 0 ){
if ( status.getId() == ((IStatus)lastChangedStatus.get(0)).getId() ){
retstatus = "Change in Current status";
}else{
retstatus = "Account Previously Changed in: " +
((IStatus)lastChangedStatus.get(0)).getStatusIdentification();
}
}else{
retstatus = "No Changes Since Creation";
}
//...more code below
??????
???·???
??????????????????
2023/3/23 14:23:39???д?ò??????????
2023/3/22 16:17:39????????????????????Щ??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44???????????????
2021/9/17 15:19:29???·???????·
2021/9/14 15:42:25?????????????
2021/5/28 17:25:47??????APP??????????
2021/5/8 17:01:11