Preferences
Preferences (환경설정 저장소)
계층 구조로 이루어진 환경설정 데이터의 한 노드를 나타내는 클래스입니다. 애플리케이션이 사용자·시스템 환경설정과 설정 데이터를 저장·조회할 수 있게 해줍니다.
본문
이 데이터는 구현에 따라 달라지는 백킹 저장소에 영속 저장됩니다. 일반적인 구현으로는 평문 파일, OS별 레지스트리, 디렉터리 서버, SQL 데이터베이스 등이 있습니다. 사용자는 백킹 저장소의 세부 사항을 알 필요가 없습니다.
환경설정 노드의 트리는 두 개로 나뉩니다. 하나는 사용자 환경설정용, 다른 하나는 시스템 환경설정용입니다. 사용자는 각자 별도의 사용자 환경설정 트리를 가지며, 한 시스템의 모든 사용자는 동일한 시스템 환경설정 트리를 공유합니다. 사용자 트리에는 특정 애플리케이션의 폰트·색상 선택, 창 위치·크기 같은 정보가, 시스템 트리에는 애플리케이션의 설치 설정 같은 정보가 담기는 것이 일반적입니다.
노드는 계층적 파일 시스템의 디렉터리처럼 이름 붙습니다. 각 노드는 노드 이름, 고유한 절대 경로명, 그리고 자신을 포함한 각 조상에 대한 상대 경로명을 가집니다. 루트 노드의 이름은 빈 문자열("")이고 절대 경로명은 "/"입니다. 루트의 자식은 "/" + <노드 이름> 형태의 절대 경로를 가집니다. 모든 절대 경로명은 슬래시 문자로 시작합니다.