<U>http://gall.dcinside.com/list.php?id=programming&no=200876&page=4&bbs</U>=
ㄴ 위 글에서 말하는 컨텍스트가 어떤 컨텍스트를 의미하는 거임?

1. 문맥이나 대상
2. 현재 값, 상태, 환경 요인
3. 클래스, 접근 수단(?)
4. 다양한 수준의 static(?)
5. Web Application(?)



사전적 의미로는 \'문맥\'이라고 표현되고, 정보 검색 기술에서 내가 알고자 하는 단어(term)의 앞뒤에 놓인 term과의
연관 관계를 통해 어떤 의미로 쓰였는지 파악하는 기법에 적용하고 있다.


 

발신자와 수신자가 일정한 코드(영어, 한국어 문법도 코드가 되겠다)로 의사소통을 할 떄,
전해지는 메시지가 지시하는 상황 혹은 대상이 곧 \'컨텍스트\'다.

 


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


 

Q. static context가 무슨뜻인가여?
A. static을 붙일 수 있는 곳이 세군데가 있습니다. 변수, 메서드, 초기화 블럭.
   이 들을 합쳐서  static context라고 얘기하는 겁니다.

 

 

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

 


Context는 사용자가 수행하는 Task에 영향을 주는 환경 요인들을 통칭해서 일컫는 말입니다.

 


Context는 OS입장에서 실행 중인 application을 관리하기 위한 자료구조라고 보시면 될 것 같습니다.
Class를 생성할 때 또는 정보를 얻고자 할때 context가 parameter로 많이 사용이 되는데
이는 Class memory를 할당하거나 정보를 얻고자 하는 memory block 정보를 검색하기 위해서
어떠한 application에서 요청했는지가 필요하기 때문입니다.

 


대충 정보통신 용어로서의 컨텍스트는 호출, 응답 간의 환경 정보라고 정의할 수 있을 것 같다.
즉, 누가 무엇을 어떤 의도를 가지고 언제 행위를 하였는지에 대한 정보를 통칭하여 컨텍스트라고 하는 듯 하다.
이 컨텍스트 정보가 그냥 일반적인 환경설정 정보와 어떤 차이를 지니냐면 컨텍스트 정보는 일반적인 환경설정 정보와
다르게 런타임시에 생성되는 정보라고 할 수 있다.

 


컨텍스트는 사람, 장소, 객체 등 사용자와 애플리케이션 간의 상황을 특징지을 수 있는 정보를 말하며,
사용자와 유비쿼터스 컴퓨팅 환경 사이에 관련된 사용자의 환경, 오브젝트, 상태에 관한 모든 정보를 말한다.


 

컨텍스트란 그 안에 상주하는 개체의 환경을 정의하는 일련의 속성입니다.
컨텍스트는 동기화, 트랜잭션, Just-In-Time 활성화, 보안 등의 특정 자동화 서비스가 필요하도록 구성된 개체의 활성화 프로세스 중에 만들어집니다.
하나의 컨텍스트에 개체가 여러 개 있을 수 있습니다.

 


C++ 언어에서 보면, Print을 하기 위해 PrintContext 객체를 사용하고,
Java Applet에서 Applet의 AppletContext를 얻기 위해 Applet.getAppletContext()를 사용하지요.
결국 \"Context\"란 \"어떤 객체를 핸들링하기 위한 접근 수단\"의 의미를 가집니다.

 


Java EE 환경에서는 컨테이너의 등장으로 인해서 공유의 수준이 다양해졌고,
다양한 수준의 \"static\"이 등장했는데 그들의 다른 이름이 Context이다.

 


Context는 특별한 Viertual Host에서 작동하는 하나의 Web Application입니다.
각 Web Application은 하나의 Web Application Archive(WAR) file나,
이에 대응하는 unpacked된 Content를 가지는 directory를 말합니다.