람다 표현식을 이용해 가독성과 유연성을 높이려면 기존 코드를 어떻게 리팩토링해야 할까?
또한 람다 표현식으로 전략, 템플릿 메서드, 팩토리 등의 객체지향 패턴을 어떻게 간소화해야 할까?
코드 가독성이란 무엇일까?
코드 가독성이 좋다 ⇒ 추상적인 표현이므로 이를 정의하기는 어렵다.
다만, 일반적으로 가독성이 좋다는 것은 ‘어떤 코드를 다른 사람도 쉽게 이해할 수 있음’을 의미한다.
9장에서는 람다, 메서드 참조, 스트림을 활용해 코드 가독성을 개선할 수 있는 세 가지 리팩토링이 있다.
하나의 추상 메서드를 구현하는 익명 클래스는 람다 표현식으로 리팩터링할 수 있다. 근데 익명 클래스를 람다 표현식으로 리팩터링하는 이유가 뭘까?
익명 클래스 예시
Runnable r1 = new Runnable() {
public void run() {
System.out.println("Hello");
}
};