SqueakByExample:9.1: Difference between revisions

From 흡혈양파의 번역工房
Jump to navigation Jump to search
(SBE 9장소개 페이지 추가)
(No difference)

Revision as of 11:05, 16 August 2012

소개

컬렉션 클래스(the collection classes)는 컬렉션(collection)과 스트림(stream)의 막연하게 정의된 일번적인 목적의 그룹입니다. 클래스들의 그룹은 전체 28개의 클래스를 위해, 컬렉션의 17개의 서브클래스(subclass)와 스트림(Stram)의 9개의 서브클래스를 포함하는 "Blue Book"[1]에서 나타나며, 스몰토크-80 시스템이 릴리즈 되기 전에 이미 여러 번 다시 디자인되어 왔습니다. 클래스들의 이 그룹은 종종 오브젝트 지향 디자인(object-oriented design)의 전형적인 예시로 종종 고려됩니다.

스퀵에서, 추상 클래스 컬렉션(the abstract class Collection)은 98개의 서브 클래스를 갖고 있으며, 추상 클래스 스트림(the abstract class Stream)은 39개의 서브 클래스를 갖고 있지만, 이 클래스들중 많은 클래스는 (Bitmap, FileStram과 CompiledMethod)는 시스템의 다른 부분들 또는 어플리케이션에서 사용하기 위해 공들여 만든 특별한 목적에 쓰이는 클래스들입니다. 이 장의 목적에 맟줘, 우리는 컬렉션(Collection)과 Collections-* 로 라벨이 붙은 시스템 카테고리에 있는 컬렉션의 37개의 서브클래스들을 의미하기 위해 “컬렉션 계층도(Collection Hierarchy)”라는 용어를 사용합니다. 우리는 또한 컬렉션 스트림 시스템 카테고리들(the Collections Streams system categories)에 있는 스트림(Stream)과 그 스트림의 10개의 서브클래스들을 의미하기 위해 “스트림 계층도(Stream Hierarchy)”라는 용어를 사용합니다. 그림 9.1에 완전한 목록이 보입니다. 이 49개의 클래스들은 794개의 메시지들에 응답하며, 총 1236개의 메소드를 정의합니다.

우리는 이번 장에서, 그림 9.2에 보이는 컬렉션 클래스의 서브세트에 주로 집중할 것입니다. 스트림(Stream)은 별도로 10장에서 논의될 것입니다.


그림 9.1: 스퀵에서의 컬렉션 클래스들(Collection Classes). 들여쓰기는 하위분류를 나타냅니다. 이탤릭체로 쓰인 클래스들은 추상 클래스입니다. 볼드체로 쓰인 클래스들은 "Blue Book"에 기술되었습니다.


그림 9.2: 스퀵에서의 몇 가지 키 컬렉션 클래스들(the key collections classes)

Notes

  1. Adele Goldberg and David Robson, Smalltalk 80: the Language and its Implementation. Reading, Mass.: Addison Wesley, May 1983, ISBN 0–201–13688–0.