티스토리 뷰

반복자 패턴(iterator pattern)

객체 지향 프로그래밍에서 반복자(이터레이터)를 사용하여 요소들에 접근하는 디자인 패턴이다.

 

구글에 이터레이터 패턴에 대해 검색하면 많은 글들이 나오는데 읽어봐도 이해가 잘 되지 않았지만,

네이버 지식백과가 좀 더 쉽게 풀어 설명해주고 있어 내용을 발췌했다.

더보기

반복에 사용되는 자료구조에는 배열, 리스트, Set, Map 등 있다.

이들의 특징은 어떤 데이터의 집합체라는 것이다. 따라서 개별 원소로 여러 가지 작업을 하게 된다.

이때 데이터들의 집합체를 모두 동일한 인터페이스를 사용하여 조작할 수 있게 하면 데이터들의 집합체를 쉽게 사용할 수 있을 것이다. 이 역할을 하는 것이 iterator 패턴이다.

예를 들어 배열의 경우 for 문을 사용하여 변수 i 값을 하나씩 증가시켜 원소들의 값을 조작한다.

 

iterator 패턴은 바로 값을 1씩 증가시키는 변수 i의 역할을 한다. 즉 변수 i의 역할을 추상화해서 일반화한 것이 iterator 패턴이다. 따라서 iterator 패턴은 배열 등에서 원소를 순서대로 조작하면서 전체를 검색하는 역할을 담당한다.

 

[네이버 지식백과] iterator 패턴 (쉽게 배우는 소프트웨어 공학, 2015. 11. 30., 김치수)

 

쉽게 생각하면 변수 i의 역활을 추상화하여 일반화한 것 이터레이터 패턴이다.

 

어려워.. 혼란하다 혼란해!

 

이터레이터 (iterator)

배열이나 그와 유사한 자료 구조의 내부의 요소를 순회(traversing)하는 객체

(iterate - 반복하다)

 

 

 

내용 전문 출처 - 네이버 지식백과

댓글