[2021년 정보시스템감리사][소프트웨어공학] 41번
41. 문제를 일으킬 가능성 때문에 리팩토링(refactoring)이 필요한 코드는 ‘악취(bad smell)’가 있다고 표현한다. 다음 설명에 가장 적절한 코드 악취(bad smell)는?
|
① 기능에 대한 욕심(feature envy)
② 데이터 덩어리(data clump)
③ 산탄총 수술(shotgun surgery)
④ 확산적 변경(divergent change)
[해설]
▣ Refactoring - Bad Smell - Shotgun surgery
- 변경을 할 때마다 많은 클래스를 조금씩 수정해야 한다.
- 변경해야 할 것이 여러 군데 널려 있기 때문에 찾기도 어렵고 변경해야 할 중요한 사항을 놓치기도 쉽다.
- 반대 상황 smell : Divergent Change
- 해결 refactoring 방법 : Move Function, Move Field, Combine Functions into class, Combine Functions into Transform, Split Phase, Inline Function, Inline Class
댓글
댓글 쓰기