-
Notifications
You must be signed in to change notification settings - Fork 0
Chapter02
JueunPark edited this page Jan 28, 2023
·
4 revisions
- 리팩터링 원칙
-
동작은 유지하고 내부 구조를 바꾸는 것
-
목적: 이해하기 쉽고, 수정이 쉽도록 바꾸는 것
-
코드를 정리하는 것은 모조리 리팩토링인가?
- 동작이 유지된다는 것이 포인트 -> 심지어 리팩토링 전에 있던 버그도 리팩토링 후에 그대로 남아있어야 한다고 주장
-
코드 베이스를 정리하거나 구조를 바꾸는 것은 재구성 "restructuring"
- 리팩토링은 재구성의 한 형태
-
리팩터링과 성능 최적화는 목적이 다르다.
- 리팩터링: 코드를 이해하고 수정하기 쉽게 바꾸는것. (성능이 떨어질 수도 있다.)
- 성능최적화: 속도 개선
-
기능 추가 모자와 리팩터링 모자 비유
- 리팩토링 모자를 쓴 동안에는 테스트도 짜지 않고 오로지 코드 재구성만 한다.
- 유연하게 짜면 복잡성이 올라감
- 미래에 어떻게 달라질지 모르고, 실제로 사용하면서 그 목표를 알게 되는 경우가 많다. 따라서 코드 작성 전에 모두 완벽하게 설계하는 것은 어렵다.
- 추측하여 대응할 필요x => 현재까지 파악된 것만 구현 => 요구사항이 더 잘 파악되면 그때 고친다
- 코드에디터