컬렉션의 구현 방법을 노출하지 않으면서 집합체 내의 모든 항목에 접근하는 방법을 제공한다.
또한 각 항목에 일일이 접근할 수 있게 해 주는 기능을 집합체가 아닌 반복자 객체가 책임진다는 장점도 있으며 집합체 인터페이스와 구현이 간단해지고 각자에게 중요한 일만을 처리할 수 있게 된다.
단일 책임 원칙(SRP : Single Responsibility Principle)
어떤 클래스가 바뀌는 이유는 하나뿐이여야 한다.
하나의 클래스는 하나의 역할만 맡아야 한다.
클래스를 고치는 일은 최대한 피해야 한다.
✅ 컬렉션이 어떤 이유로 바뀌게 되면 그 클래스도 바뀌어야 한다.
✅ 반복자 관련 기능이 바뀌었을 때도 클래스가 바뀌어야 한다.

HeadFirst DesignPattern - 한빛미디어
많은 것을 배웠습니다, 감사합니다.