Namespace   이름 공간, 네임 공간, 네임 스페이스

(2020-09-08)

Address Space, 주소 공간, Domain Name Space, 도메인 이름 공간

Top > [기술공통]
[기초과학]
[진동/파동]
[방송/멀티미디어/정보이론]
[전기전자공학]
[통신/네트워킹]
[정보기술(IT)]
[공학일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
프로그래밍 >   1. 프로그램, 프로그래밍
[프로그래밍 언어론]
[프로그래밍 방법론]
[객체지향 프로그래밍]
[자료표현코드]
[자료구조]
[알고리즘]
[시스템 소프트웨어]
[프로그래밍언어 종류]
[프로그래밍 기타일반]
프로그래밍언어 종류 >   1. 프로그래밍 언어
[C]
[C++]
[자바(Java)]
[자바스크립트]
[PHP]
[파이썬]
[(기타 언어)]
C++  1. C++ 언어
  2. C++ 자료형
  3. 네임스페이스

Top > [기술공통]
[기초과학]
[진동/파동]
[방송/멀티미디어/정보이론]
[전기전자공학]
[통신/네트워킹]
[정보기술(IT)]
[공학일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
통신/네트워킹 >   1. 통신 이란?
  2. 신뢰적 통신
[통신이론]
[선로/전송]
[통신망 일반]
[회선교환(PSTN)]
[무선/이동통신]
[광통신]
[인터넷/데이터통신]
인터넷/데이터통신 >   1. 데이터통신망
  2. 인터넷
  3. 데이터 네트워크 설계
[데이터 단위]
[프로토콜/계층]
[데이터 링크]
[TCP/IP]
[라우팅]
[인터넷 QoS]
[인터넷 관리]
[웹기술]
[인터넷 응용]
[인터넷 기타]
[패킷교환(PSN)]
[인터넷 관련 기관]
인터넷 응용 > [NetBIOS]
[DNS]
[가상단말]
[FTP]
[전자메일]
[VoIP]
[VPN]
[무선인터넷]
[전자상거래]
[개인 컨텐츠]
[인터넷 기타 응용]
DNS >   1. DNS
[네임공간]
[DNS 메세지(프로토콜)]
[네임서버]
[DNS 기타일반]
네임공간  1. 이름 공간
  2. 도메인 이름
  3. TLD,gTLD,ccTLD
  4. 호스트 이름,FQDN
  5. DNS 영역(Zone)
  6. 레지스트라

1. 이름 공간(네임 스페이스) 또는 주소 공간

  ㅇ [일반]        
     - 참조되는 저장 장소, 저장 구조, 저장 영역/범위/소속/용량 등을 의미 

  ㅇ [프로그래밍]  
     - 어떤 이름(변수,함수,클래스,메소드 등)으로 영향을 미칠 수 있는 공간(범위)

  ㅇ [메모리 관리]  
     - 컴퓨터 구조 상의 주소 공간
        . 프로세서가 참조 가능한(Addressable) 최대 메모리 공간을 의미 
           .. 실제 물리적 메모리 공간 보다 더 큰 가상의 메모리를 쓰는 프로세스 주소 공간
           .. 즉, 가상메모리 관리 기법 상의 메모리 주소 공간을 지칭함

  ㅇ [인터넷]
     - 인터넷 상의 이름 또는 주소를 부여하는 논리적/구조적 공간
        . 이름 : 보통, 인간이 식별할 수 있는 명칭
        . 주소 : 보통, 기계가 식별할 수 있는 숫자 주소 


2. [인터넷]  인터넷 상의 이름 공간주소 공간  인터넷 이름 공간인터넷도메인 참조 
     - 도메인 이름을 저장하는 공간적 구성 형태 
        . 계층적 트리구조를 취함 (0 레벨인 루트로부터 최대 128개 레벨 가능) ☞ 트리 용어 참조
           .. 각 도메인은 그에 해당하는 도메인 이름을 가지며, 
           .. 상위 도메인은 하위 도메인에 대한 정보를 유지 관리하는 형태를 취함

  ㅇ 인터넷 주소 공간IP 주소 참조
     - 인터넷 상의 논리IP주소가 부여될 수 있는 주소 공간 (주소용량)
        . 공인 주소는 보통 지리적으로 큰 블록 단위주소 할당을 함 

  ※ 이름 및 주소 간 변환           ☞ 이름 주소 변환 참조


3. [프로그래밍]  네임스페이스

  ㅇ 어떤 이름(변수,함수,클래스,메소드 등)으로 영향을 미칠 수 있는 공간(범위)
     - 이들을 동일 이름 하에 한 범주로 묶어주기 위한 문법프로그래밍에서, `이름 충돌(name collision)`을 방지하는 방법 임
     - 클래스,인터페이스,함수,상수 등 이름에 표준적인 공통 접두어를 적용하는 표기법
        . 이들을 한곳에 모아두어(별도 파일 또는, 프로그램 시작부), 이름 충돌을 방지

  ㅇ 주로, 전역 네임스페이스를 분할하는 메카니즘 임
     - 같은 이름을 여러 다른 기능에 사용 가능케 하여, 대규모 프로그램 제작에 유리
        . 즉, 타 부류(개발자/팀)의 코드와 구분시켜 이름 충돌이 없게 함
        . 이를통해, 타 부류(개발자/팀)의 코드와 동시에 작동하는 고립된 코드 작성이 가능

  ㅇ C++ 언어 例)
     - 정의 : namespace 네임스페이스이름 { 이곳에 클래스,변수,함수 등을 선언 함 }
     - 사용 
        . ① using 지시문(Directive) : 네임스페이스의 모든 식별자를 범위(Scope)로 가져오기
            
#include <iostream>
using namespace std;
. ② using 선언(Declaration) : 해당 식별자 만을 범위(Scope)로 가져오기 - 연산자 . :: (범위 지정 연산자,Scope resolution operator) : 매 식별자 마다 지정 사용 4. [참고사항]인터넷 이름 공간에서 정보의 저장 및 관리 ☞ 네임서버 참조 ㅇ 주소(이름)의 식별 체계 ☞ 주소체계 참조 ㅇ IP 주소 공간의 절약/극대화 ☞ CIDR, VLSM 참조


[C++] 1. C++ 언어 2. C++ 자료형 3. 네임스페이스
  1.   기술공통
  2.   기초과학
  3.   진동/파동
  4.   방송/멀티미디어/정보이론
  5.   전기전자공학
  6.   통신/네트워킹
  7.   정보기술(IT)
          1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
            1. 프로그램, 프로그래밍
      1.   프로그래밍 언어론
      2.   프로그래밍 방법론
      3.   객체지향 프로그래밍
      4.   자료표현코드
      5.   자료구조
      6.   알고리즘
      7.   시스템 소프트웨어
      8.   프로그래밍언어 종류
              1. 프로그래밍 언어
        1.   C
        2.   C++
          1.     1. C++ 언어
                2. C++ 자료형
                3. 네임스페이스
        3.   자바(Java)
        4.   자바스크립트
        5.   PHP
        6.   파이썬
        7.   (기타 언어)
      9.   프로그래밍 기타일반
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
    8.   IT 기타기술
  8.   공학일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

    요약목록

Copyrightⓒ 차재복 (Cha Jae Bok)     「 소액후원 」 [ 최근편집 : 자바스크립트 Iterator Method(9월26일)  자바스크립트 배열 메소드(9월26일)  블록 부호(9월25일)  부울 변수(9월25일)  시뮬레이션(9월25일)  . . . ]