1 개요[ | ]
- refactoring
- 리팩토링, 재구조화
- 결과의 변경 없이 코드의 구조를 재조정하는 일
- 기술 부채(설계 스멜, 코드 스멜)를 해소하는 일
- 외부 동작에는 변화없이 기존 코드의 내부구조를 개선하는 일
- 사용자 화면은 그대로 유지한 채 내부 논리나 구조를 개선하는 일
- 기능은 그대로 동작하도록 두고, 소프트웨어 내부를 수정하는 작업
- 기능의 변화없이 기능의 추가 용이함을 의한 일련의 소스 수정 과정
- 애플리케이션 실행 결과의 변경 없이 코드의 구조를 재조정하는 기법
- 목적: 가독성 향상, 생산성 향상, 코드 품질 향상, 견고성 향상, 유지보수성 향상
- 리팩토링이 최적화는 아니다. 오히려 성능이 저하될 수도 있다.
- 일정이 촉박한 경우에는 하기 어렵다.
- 유닛 테스트 없이는 제대로 하기 어렵다. 리팩토링 후에 뭔가 안될 때, 원래 있던 문제인지 리팩토링 때문에 발생한 문제인지 확인하기 어렵기 때문이다. (즉, 오작동에 대한 걱정 + 원인 규명의 어려움)
2 하는 이유[ | ]
- 가독성이 높아진다.
- 버그를 찾기 쉬워진다.
- 소프트웨어 설계가 개선된다.
3 꺼리는 이유[ | ]
- 일손·시간 부족
- 리팩토링 지식 부족
- 변경 후 오작동 우려 ★
4 예시[ | ]
- 메소드 추출 ★
- 인터페이스 추출
- 이름변경
- 파라미터 제거
- 파라미터 재배열
5 같이 보기[ | ]
6 참고[ | ]
- 이거 어떻게 하는 거에요?
― 승호 도령
- 천재 김왼손과 함께하는 코딩!
― 불탄고등어
- 꺄아악 왼손님 잘생겨따
― 김레이
- 마지막날 왼손님 얼굴 좋다
― 호박이
- 수정 하려고 했는데 파일이 잠겨있네요..?
― Junhg0211
- 미운코딩새끼 1차 초안 완료되었습니다!
― 김왼손
- 드디어 영상 한 번 완주 했네요.
유익했습니다.
앞으로 더 열심히 공부하겠습니다.
― 용딘이
- 미운코딩새끼: 4시간만에 끝내는 파이썬 기초 https://wikidocs.net/book/1421
―
Pinkcrimson - 다들 수고하셨습니다~~^^
마지막 강의를 못봐서 아쉽네요ㅠㅠ
― 호박
- 모두 수고하셨습니다^^
― 이에스
- 수고하셨어요~^^
― 이승현
- [https://www.sisain.co.kr/news/articleView.html?idxno=42946 AI는 교육 불평등 해소할 열쇠]
―
Pinkcrimson