티스토리 뷰
반복자 패턴(iterator pattern)
객체 지향 프로그래밍에서 반복자(이터레이터)를 사용하여 요소들에 접근하는 디자인 패턴이다.
구글에 이터레이터 패턴에 대해 검색하면 많은 글들이 나오는데 읽어봐도 이해가 잘 되지 않았지만,
네이버 지식백과가 좀 더 쉽게 풀어 설명해주고 있어 내용을 발췌했다.
반복에 사용되는 자료구조에는 배열, 리스트, Set, Map 등 있다.
이들의 특징은 어떤 데이터의 집합체라는 것이다. 따라서 개별 원소로 여러 가지 작업을 하게 된다.
이때 데이터들의 집합체를 모두 동일한 인터페이스를 사용하여 조작할 수 있게 하면 데이터들의 집합체를 쉽게 사용할 수 있을 것이다. 이 역할을 하는 것이 iterator 패턴이다.
예를 들어 배열의 경우 for 문을 사용하여 변수 i 값을 하나씩 증가시켜 원소들의 값을 조작한다.
iterator 패턴은 바로 값을 1씩 증가시키는 변수 i의 역할을 한다. 즉 변수 i의 역할을 추상화해서 일반화한 것이 iterator 패턴이다. 따라서 iterator 패턴은 배열 등에서 원소를 순서대로 조작하면서 전체를 검색하는 역할을 담당한다.
[네이버 지식백과] iterator 패턴 (쉽게 배우는 소프트웨어 공학, 2015. 11. 30., 김치수)
쉽게 생각하면 변수 i의 역활을 추상화하여 일반화한 것이 이터레이터 패턴이다.
이터레이터 (iterator)
배열이나 그와 유사한 자료 구조의 내부의 요소를 순회(traversing)하는 객체
(iterate - 반복하다)
내용 전문 출처 - 네이버 지식백과
'study > Web' 카테고리의 다른 글
디자인 패턴 - MVP 패턴 (MVP pattern) (0) | 2022.10.31 |
---|---|
디자인 패턴 - MVC 패턴 (MVC pattern) (0) | 2022.10.31 |
디자인 패턴 - 프록시 패턴(proxy pattern) (0) | 2022.10.20 |
디자인 패턴 - 옵저버 패턴(observer pattern) (0) | 2022.10.13 |
디자인 패턴 - 전략 패턴(strategy pattern) (0) | 2022.10.13 |
- Total
- Today
- Yesterday
- Java
- 회원 로그인
- python3
- 검색 결과 내 페이지네이션
- Python
- django.contrib.auth
- 면접을 위한 CS 전공 지식 노트
- 회원가입
- django
- error: failed to push some refs to 'https://github.com/
- git공부
- authenticate()
- 한글 형태소 분석기
- 디자인 패턴
- Spring
- 커맨드 객체
- git
- git 공부
- API
- 환경 변수 설정
- musma
- Django tutorial
- path variable
- 웹페이지
- Magazine K
- 톰캣
- 혼자 공부하는 파이썬
- 암호화
- 배열
- django-environ
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |