14. Split Temporary Variable임시변수 분리
- 임시변수를 하나를 여러 용도로 사용하지 말자.
//acc 변수에 값을 재할당하고 있음
//임시 변수에 final을 사용하여 값의 재할당을 방지
15. Remove Assignments to Parameters매개변수로의 값 대입 제거
- 파라미터로 받은 변수의 값을 변경하지 말자
- 메서드 안에서의 값의 변화는 호출한 루틴에 반영되지 않는다.(call by value)
- Tip. 이 방법을 강제적용하기 위해 final 키워드를 사용
//때로는 매개변수에 final을 사용하여 값의 재할당을 방지할 수 있음.
- 객체를 매개변수로 사용할 때 아래와 같은 방식은 절대 사용하지 말자(Call by reference)
16. Replace Method with Method Object메서드를 매서드 객체로 전환
- 지역변수 때문에 메서드 추출(R.T.Q) 적용이 어려운 메서드는 그 메서드 자체를 객체로 전환
- 지역변수를 전환한 객체의 필드로 만들고 그 메서드를 객체안의 여러 메서드로 쪼개자
- Pros. 손쉽게 Extract Method 적용 가능
//지역변수를 객체의 필드로 정의
//Method Extract