collection - 해당되는 글 1건
1. collection이란?
보통 collection이라 하면 여러개의 원소를 한 묶음으로 묶어줄 수 있는 객체를 의미합니다. 객체를 담는 객체라고 생각하시면 되고, container라고 부르기도 합니다. 꼭 자바에서만 통용되는 의미는 아니죠.
이 collection을 이용하면 데이터를 collection에 담아두기도 하고, collection 담아둔 데이터를 나중에 다시 찾을 수도 있어야 합니다.
자바의 배열이나 java.util.Vector를 사용해보셨다면 collection이 어떤 것인지 대충 짐작하고 계실겁니다. 다시 말해, 우리가 개념적으로 어떤 것들의 묶음을 생각하고 있다면, 프로그래밍 언어에서 제공하는 collection으로 표현하면 되는 것입니다.
자바에서 이미 여러 종류의 collection들을 제공하고 있어 프로그래머에게 상당히 편리합니다. C/C++ 프로그래밍을 하다가 자바를 사용하게 되면서 느끼게 되는 가장 큰 매력중의 하나가 바로 자바에서는 다양한 collection이 제공된다는 점이죠.

* 인터페이스
Collection, List, Set, Map

* 구현 클래스
Set에 속하는 것들: HashSet, TreeSet
List에 속하는 것들: ArrayList, LinkedList
Map에 속하는 것들: HashMap, TreeMap

2. collection framework란?
collection framework란 프로그래밍 언어에서 collection을 제공하는데 필요한 밑바탕에 해당합니다. collection을 표현하기 위한 자료구조와 collection에 대해 사용할 수 있는 연산들을 위한 전반적인 아키텍처를 의미합니다. 자바에서는 collection framework를 구성하는 세가지 요소를 다음과 같이 정리할 수 있습니다.

- interface: 그냥 추상적으로 collection에 대해 생각할 수 있는 연산들만을 정의합니다. 예를 들어, list면 원소 추가하기, 원소 삭제하기, n번째 원소 얻기 등등을 정의해둔 collection의 interface가 고유의 collection마다 정의되어 있기 마련이죠.
- implementation: 각 collection을 실제 어떤 자료구조를 이용하여 표현했느냐에 따라, collection의 종류가 달라집니다.
- algorithm: 각 collection마다 유용하게 사용할 수 있는 메소드를 의미합니다.

자바 collection은 이러한 collection framework란 견고한 기반위에서 정의되어 있으므로, 각 collection 종류마다 제공되는 method에 일관성이 있어, 한가지 collection을 익혀두면 다른 collection을 사용하기가 매우 쉽습니다.
|

변화가필요해...'s Blog is powered by Daum & tistory