이름-값 쌍
"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
이름-값 쌍은 정보를 표현하는 데 사용되는 데이터 구조로, 이름(또는 키)과 해당 값의 조합으로 구성된다. 전자우편 헤더, URL 쿼리 문자열, 마크업 언어의 요소 속성, 키-값 데이터베이스, 윈도우 레지스트리 항목 등 다양한 분야에서 활용된다. 일부 프로그래밍 언어는 연관 배열 형태로 이름-값 쌍을 구현하며, 중첩된 속성-값 쌍을 포함하는 값을 가질 수도 있다.
| 공식 명칭 | 미합중국 (United States of America) |
|---|
| 약칭 | 미국 (U.S.A. / United States / US) |
|---|
국기
| 국가 | The Star-Spangled Banner (https://www.youtube.com/watch?v=M8xWzMxYlbw) |
|---|
| 정치 체제 | 연방 공화국, 대통령제 |
|---|
| 대통령 | 조 바이든 |
|---|
| 부통령 | 카멀라 해리스 |
|---|
| 의회 | 미국 의회 |
|---|
| 상원 의장 | 카멀라 해리스 |
|---|
| 하원 의장 | 마이크 존슨 |
|---|
| 독립 선언일 | 1776년 7월 4일 |
|---|
| 현재 헌법 채택 | 1788년 3월 4일 |
|---|
| 2023년 추정 | 334,805,269명 (세계 3위) |
|---|
| 인구 밀도 | 36명/km² |
|---|
📚 더 읽어볼만한 페이지
-
데이터 모델링 -
빌딩 정보 모델링
빌딩 정보 모델링(BIM)은 건축물의 전 생애주기 동안 발생하는 정보를 디지털 모델로 통합 관리하는 프로세스이다.
-
데이터 모델링 -
저장 프로시저
저장 프로시저는 데이터베이스 관리 시스템에서 SQL 문들을 미리 컴파일하여 저장하고, 모듈화, 보안성, 성능 향상, 유지보수 용이성과 같은 특징을 가지며, 데이터베이스 시스템마다 구현 방식과 지원하는 언어가 다를 수 있는 코드 묶음이다.
2. 사용 예시
이름-값 쌍은 정보를 구조화하고 표현하는 기본적인 방식으로, 컴퓨터 과학 및 정보 기술 분야뿐만 아니라 다양한 영역에서 널리 활용된다. 예를 들어, 전자우편의 헤더 정보, 웹 URL의 쿼리 문자열, 운영체제의 환경 변수나 윈도우 레지스트리 설정, HTML 문서의 속성 지정 등 수많은 곳에서 찾아볼 수 있다. 지도 데이터(오픈스트리트맵)나 데이터베이스(키-값 데이터베이스)에서도 중요한 역할을 한다.
2.1. 컴퓨터 과학 및 정보 기술
이름-값 쌍으로 정보가 표현되는 응용 분야의 예는 다음과 같다.
* 이메일, RFC 2822 헤더
* 쿼리 문자열, URL
* 네트워크 프로토콜의 선택적 요소, 예를 들어 IP는 TLV(type–length–value) 삼중항으로 나타나는 경우가 많다.
* BibTeX 및 더블린 코어 메타데이터와 같은 서지 정보
* SGML, HTML 및 XML의 요소 속성
* 키-값 데이터베이스
* OpenStreetMap 지도 데이터
* Windows 레지스트리 항목
* 환경 변수
2.2. 기타 분야
이름-값 쌍으로 정보가 표현되는 응용 분야의 예는 다음과 같다.
* 전자우편, RFC 2822 헤더
* 쿼리 문자열, URL 내
* 네트워크 프로토콜의 선택적 요소, 예를 들어 IP는 TLV(type–length–value) 삼중항으로 나타나는 경우가 많다.
* BibTeX 및 더블린 코어 메타데이터와 같은 서지 정보
* SGML, HTML 및 XML의 요소 속성
* 키-값 데이터베이스
* OpenStreetMap 지도 데이터
* Windows 레지스트리 항목
* 환경 변수
3. 컴퓨터 언어에서의 사용
프로그래밍 언어에서 이름-값 쌍(또는 속성-값 쌍)은 데이터를 구조화하는 기본적인 방식으로 널리 사용된다. 많은 언어들이 이를 연관 배열과 유사한 형태로 내장 기능으로 지원하며, JSON이나 INI 파일과 같은 데이터 직렬화 형식에서도 중요한 역할을 한다. 이러한 형식들은 데이터 교환이나 설정 저장 등에 활용되며, 중첩 구조를 지원하는 방식에 차이가 있다.
3.1. 구현 방식
일부 프로그래밍 언어는 이름-값 쌍, 또는 더 일반적으로 속성-값 쌍의 모음을 표준 언어 기능으로 구현한다. 이러한 대부분은 연관 배열의 일반적인 모델을 구현하는데, 이는 연관된 값을 가진 정렬되지 않은 고유 속성의 목록을 의미한다. 결과적으로 이 방식은 완전히 일반적이지는 않으며, 예를 들어 순서가 중요하거나 고유하지 않은 속성을 가져야 하는 전자 메일 헤더와 같은 구조를 구현하는 데에는 사용하기 어렵다.
일부 응용 프로그램에서는 이름-값 쌍의 값이 다시 중첩된 속성-값 쌍 모음을 포함하기도 한다. JSON과 같은 일부 데이터 직렬화 형식은 임의의 깊이까지 중첩을 지원한다. 반면, INI 파일의 섹션/이름/값 구조와 같이 다른 데이터 표현 방식에서는 중첩 수준이 하나로 제한되기도 한다.
3.2. 한계
일부 프로그래밍 언어는 이름-값 쌍, 또는 더 일반적으로 속성-값 쌍의 모음을 표준 언어 기능으로 구현한다. 이러한 대부분은 연관 배열의 일반적인 모델을 구현한다. 즉, 연관된 값을 가진 정렬되지 않은 고유 속성의 목록이다. 결과적으로 완전히 일반적이지 않으며, 예를 들어 순서가 있고 고유하지 않은 전자 메일 헤더를 구현하는 데 사용할 수 없다.
일부 응용 프로그램에서 이름-값 쌍은 중첩된 속성-값 쌍 모음을 포함하는 값을 갖는다. JSON과 같은 일부 데이터 직렬화 형식은 임의의 깊이의 중첩을 지원한다. 다른 데이터 표현은 INI 파일의 섹션/이름/값과 같이 중첩 수준이 하나로 제한된다.