티스토리 뷰
1. 리팩토리의 정의
리팩토링(Refactoring)[명사]
소프트웨어를 보다 쉽게 이해할 수 있고, 적은 비용으로 수정할 수 있도록 겉으로 보이는 동작의 변화 없이 내부 구조를 변경하는 것
리팩토링 하다 ( Refactor ]
일련의 리팩토링을 적용하여 겉으로 보이는 동작의 변화 없이 소프트웨어의 구조를 바꾸다.
** 리팩토링의 목적은 소프트웨어를 보다 이해하기 쉽고, 수정하기 쉽도록 만드는 것이다.
언제 리팩토링을 해야 하는가 ?
- 기능을 추가할 때 리팩토링을 하라
- 버그를 수정할 때 리팩토링을 하라
- 코드 검토를할 때 리팩토링을 하라
2. 코드 속의 나쁜 냄세
- 중복된 코드 (Duplicated Code]
- 긴 메소드 ( Long Method )
- 거대한 클래스 (Large Class)
- 긴 파라미터 리스트 ( Long Parameter List)
- 확산적 변경
-- 한 클래스가 다른 이유로 인해 다른 방법으로 자주 변경되는 경우에 발생한다.
- 산탄총 수술
-- 하나를 변경 했을 때 많을 클래스를 고쳐야 하는 경우
- 기능에 대한 욕심
- 데이터 덩어리
- 기본 타임에 대한 강박관년 (Primitive Obsession)
- Switch 문 ( Switch StateMents )
- 게으른 클래스 (Lazy class)
- 추측성 리반화
- 임시 필드 (Temporary Filed )
- 메시지 체인 (Messgage Chains)
- 미들 맨
- 부적절한 친밀 (Inappropriate Intimacy)
- 불완전한 라이브러 클래스 ( Incomplete Labrary Class)
'여러가지' 카테고리의 다른 글
UML 의 관계 표현 (0) | 2014.02.26 |
---|---|
분석요령 5가지 (0) | 2014.02.26 |
아마존 웹서비스 링크 모음 (0) | 2014.02.21 |
etsy 분석 (0) | 2014.02.05 |
웹기술 번역문서자료 (0) | 2014.01.24 |