컴퓨터 공부/디자인 패턴
[7월 6일 3교시] Iterator 패턴,
려리군
2009. 7. 6. 13:08
Intent : 내부 표현방식을 공개하지 않고 순차적으로 접근할 수 있다.
다른 예시 : 커서
객체는 리스트로 표현되고 내부 표현은 모르는 채 접근한다.
순회기법을 정의한다.
Key Idea
내용을 순회하는 내용을 Iterator 객체에 정의한다.
※ 삽입이나 삭제는 객체 자체에서 정의.
구현 Key Idea
다양한 리스트를 조작하는 데 필요한 공통의 인터페이스를 위한 List와 반복해서 접근하는 데 필요한 Iterator 클래스를 추상클래스로 정의.
AbstractList <- 클라이언트 접근 -> Iterator
+-List ↔ +- ListIterator
+-SkipList ↔ +- SkipListIterator
Structural
Aggregate : 트리, 리스트, 맵등...