Context   컨텍스트, 상황 (Context)

(2021-03-13)

문맥, Execution Context, 실행 콘텍스트

Top > [기술공통]
[기초과학]
[진동/파동]
[전기전자공학]
[방송/멀티미디어/정보이론]
[통신/네트워킹]
[정보기술(IT)]
[공학일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
프로그래밍 >   1. 프로그램, 프로그래밍
[프로그래밍 언어론]
[프로그래밍 방법론]
[객체지향 프로그래밍]
[자료표현코드]
[자료구조]
[알고리즘]
[시스템 소프트웨어]
[프로그래밍언어 종류]
[프로그래밍 기타일반]
프로그래밍언어 종류 >   1. 프로그래밍 언어
[C]
[C++]
[자바(Java)]
[자바스크립트]
[PHP]
[파이썬]
[(기타 언어)]
자바스크립트 >   1. JavaScript
  2. JS 기초 문법
[JS 변수,타입,논리식]
[JS 구문,연산자]
[JS 실행환경]
[JS 함수]
[JS 객체]
[JS 배열/Map/Set]
[JS 활용]
[JS 웹문서 제어]
JS 실행환경   1. 실행 컨텍스트
  2. 스코프
  3. 변수 호이스팅
  4. this 참조
  5. 클로저
  6. IIFE (즉시실행함수)
  7. 모듈

Top > [기술공통]
[기초과학]
[진동/파동]
[전기전자공학]
[방송/멀티미디어/정보이론]
[통신/네트워킹]
[정보기술(IT)]
[공학일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
기술공통 > [공통/유사어(ㄱ~ㄴ)]
[공통/유사어(ㄷ~ㄹ)]
[공통/유사어 (ㅁ~ㅂ)]
[공통/유사어(ㅅ)]
[공통/유사어(ㅇ~ㅈ)]
[공통/유사어(ㅊ~ㅌ)]
[공통/유사어(ㅍ~ㅎ)]
[단순기술용어]
공통/유사어(ㅊ~ㅌ)   1. 척도 (scale)
  2. 추상화 (abstraction)
  3. 컨텍스트 (context)
  4. 클래스 (class)
  5. 클러스터 (cluster)
  6. 타이머 (timer)
  7. 태그 (tag)
  8. 트리거 (trigger)

1. 컨텍스트

  ㅇ `상황, 맥락, 문맥 상의 의미` 등으로 이해되는 용어

  ㅇ 사실상, 컨텍스트는,
     - 그냥 텍스트(Text) 처럼 바로 이해되는 단순히 원본 정도가 아니라,
     - 문맥 및 상황에 따라, 어떤 해석이 가미되어 이해되는 한 차원 높은 공간, 영역을 의미

  ㅇ 전산 뿐만 아니라 방송, 예술 등의 분야에서도 널리 사용되는 용어


2. [전산]  컴퓨터 내부 (하드웨어 관점)

  ㅇ 컨텍스트는 컴퓨터 내부에서 볼 때,
     - 프로세서 안에 있는 레지스터, 플래그 등의 현재 값/상태들의 집합을 말함

  ㅇ Context Switching (문맥 교환)
     - 멀티태스킹 작업을 수행하면서, 각 태스크들을 순서있게 교체 수행하면서,  
     - 태스크 상태 정보레지스터들에 저장 또는 이전 상태를 불러오기위한 작업으로, 
     - 실제 프로그램을 수행하는 작업은 아님


3. [전산]  프로그램 내부 (소프트웨어 관점)

  ㅇ 그때그때 상황에 맞게끔, 실행/판단/결정 등을 해야하는 부분 
     - 例) 할당 연산자(=) 다음에는, 표현식 컨텍스트가 옴
     - 例) if 조건문 다음에 { 가 오면, 문장 컨텍스트가 옴
     - 例) 컨텍스트 메뉴 (context menu)
        . 그 메뉴를 호출한 동작 및 상황에 따라, 다르게 선택 사항들이 나열되는 메뉴


4. [전산]  자바스크립트 실행 컨텍스트 (Execution Context)

  ㅇ 실행에 필요한 다양한 정보를 형상화하고, 이들을 목록화 관리하기 위한, 추상적인 개념
     - 실행 가능한 코드가 실행되는 프로그램 환경
        . 현재 실행중인 부분
     - 결국, 실행에 필요한 정보들로써,
        . 변수 등의 유효 범위(Scope),유효 기간(Lifetime)의 결정을 위한 환경 정보들
        . 실행에 필요한 정보들의 例)
           .. 변수들 (전역변수, 지역변수, 매개변수, 객체프로퍼티)
           .. 함수 선언 정보
           .. 변수의 유효범위(Scope)
           .. this가 가리키는 것 등

  ㅇ 실행 컨텍스트의 관리 및 보유 형태
     - 관리 형태
        . 실행에 필요한 여러 정보들을, 객체 형태로 담아 스택(LIFO)으로 관리 
     - 보유 형태
        . { 렉시컬 환경 : (환경 레코드 + 외부 렉시컬 환경에 대한 참조) }

  ㅇ 만일, 자바스크립트 엔진이, 
     - 실행 가능한 코드를 만나면, 그 코드를 평가해서, 실행 컨텍스트를 만들어냄 
        . 例) 
           .. 만일, 함수를 호출하면, 
           .. 현재 실행중인 코드의 작업을 잠시 멈추고,
           .. 실행 컨텍스트 영역을 생성하고,
           .. 이때 생성된 함수 실행 컨텍스트는 실행 컨텍스트 스택에 푸시되고,
           .. 실행 흐름이 그 실행 컨텍스트로 이동하고,
           .. 함수 안팎의 환경을 찾아내어, 실행되어지며,
           .. 함수 실행이 종료되면, 실행 컨텍스트 스택에서 팝되어 제거됨

     - 실행 가능한 코드의 例)
        . 전역 코드 : 가장 바깥쪽에 존재하는 것
        . 함수 코드
        . eval 함수
        . 모듈 코드


[JS 실행환경] 1. 실행 컨텍스트 2. 스코프 3. 변수 호이스팅 4. this 참조 5. 클로저 6. IIFE (즉시실행함수) 7. 모듈
  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++
        3.   자바(Java)
        4.   자바스크립트
              1. JavaScript
              2. JS 기초 문법
          1.   JS 변수,타입,논리식
          2.   JS 구문,연산자
          3.   JS 실행환경
            1.   1. 실행 컨텍스트
                2. 스코프
                3. 변수 호이스팅
                4. this 참조
                5. 클로저
                6. IIFE (즉시실행함수)
                7. 모듈
          4.   JS 함수
          5.   JS 객체
          6.   JS 배열/Map/Set
          7.   JS 활용
          8.   JS 웹문서 제어
        5.   PHP
        6.   파이썬
        7.   (기타 언어)
      9.   프로그래밍 기타일반
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
    8.   IT 기타기술
  8.   공학일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     요약목록     참고문헌