본문 바로가기
Engineering WIKI/Docs

IT 용어 정리

by wonos 2019. 1. 19.

호스트 [host]

  • 컴퓨터 네트워크와 원거리 통신에서 프로그램이나 데이터 파일을 다른 컴퓨터에서 사용할 수 있도록 하는 등 중앙 집중적인 기능을 수행하는 컴퓨터. 호스트 컴퓨터에 연결한 사용자는 전자 우편과 텔넷, 그리고 FTP와 같은 응용 프로그램을 사용하여 원하는 서비스를 요청할 수 있다. 이 말의 원래의 의미 「주인」과 같이 하드웨어, 소프트웨어 분야를 가리지 않고 「상위」, 「친(親)」, 「주(主)」, 「호스트」로 번역한다. 호스트 컴퓨터(host computer), 호스트 CPU(host CPU), 호스트 프로세서(host processor) 등의 복합어가 있다. host와 대조적으로 사용되는 것은 새틀라이트(satelite)이다. 분산 데이터 처리(distributed data processing)에도 관련된 용어이다.
  • cp.) 인터넷에서 호스트는, 인터넷을 통해 다른 컴퓨터들과 쌍방향 통신이 가능한 컴퓨터를 말한다. 호스트는 특정한 호스트번호를 갖는데, 이는 네트워크 번호와 합해져서, 고유의 IP 주소를 이루게된다. 인터넷 서비스 제공업체를 통한 PPP 사용자의 경우에는, 접속되어있는 동안에만 고유한 IP 주소를 갖게되며, 그 시간 동안은 해당 사용자의 컴퓨터도 하나의 호스트가 되는 것이다. 이러한 맥락에서 보면, 호스트란 네트워크의 하나의 노드라고 볼 수도 있다.

포트 [port]

  • 모뎀과 컴퓨터 사이에 데이터를 주고받을 수 있는 통로. 컴퓨터에서 포트는 크게 두 가지 의미를 지닌다. 첫째는 컴퓨터의 주변장치를 접속하기 위해 사용되는 연결 부분을 의미한다. 대개 소켓이나 플러그 등의 형태로 되어 있다. 정보가 드나드는 출입구로, 주로 프린터를 접속하기 위한 센트로닉스 등의 병렬포트와 기타 주변장치를 접속하기 위한 RS-232C 등의 직렬포트가 있다.
  • 둘째, 프로그래밍에서는 논리적인 접속장소를 뜻한다. 특히 TCP/IP를 사용할 때에는 클라이언트 프로그램이 네트워크 상의 특정 서버 프로그램을 지정하는 방법으로 사용된다. TCP/IP의 상위 프로토콜을 사용하는 응용프로그램에서는 인터넷번호 할당 허가위원회(IANA)에 의해 미리 지정된 포트번호들을 가지고 있다. 이런 포트번호들은 '잘 알려진 포트들'이라고 불린다. 다른 응용프로그램 프로세스들은 접속할 때마다 포트번호가 새로 부여된다. 포트번호는 0부터 65535까지이며, 0부터 1023까지는 어떤 특권을 가진 서비스에 의해 사용될 수 있도록 예약되어 있다. HTTP서비스를 위해서는 대개 80번 포트가 지정된다.
  • 포트번호는
      1. 잘 알려진 포트(Well known ports): 0~1023
      1. 등록된 포트(Registered ports): 1024~49151
      1. 다이나믹 포트(Dynamic or Private ports): 49152~65535 으로 지정되어 있다.
  • cf.) 80번 포트 [port]
    • 웹 서버나 HTTPD(hypertext transport protocol daemon)에서, 80번 포트는(서버를 설치 할 때 기본 설정을 취했다고 가정하면) 웹 클라이언트로부터의 요구가 들어오기를 기대하는 포트이다. 이 포트는 NCSA 서버에서는 0~65536번의 범위 내에서 설정될 수 있다. 그러나 서버 관리자는 그 서버를 단 하나의 포트 번호만이 인식되도록 설정한다. 기본적으로 웹 서버의 포트 번호는 80번이다. 실험적으로 하는 서비스는 대개 8080번 포트에서 실행될 수 있다.

프록시 [proxy]

  • 데이터를 가져올 때 해당 사이트에서 바로 자신의 PC로 가져오는 것이 아니라 임시 저장소를 거쳐서 가져오는 것. 프록시를 설정하면 수 초의 빠른 속도를 느낄 수 있다. 프록시 서버에는 다수의 사용자들이 들르는 사이트에 대한 데이터가 저장되어 있어 경우에 따라 해당 사이트에 들르지 않고 바로 이 서버에 있는 데이터를 이용하기도 한다. 하지만 프록시 서버에 문제가 생겼거나 과부하가 걸렸을 경우 오히려 더 느려지는 경우도 있다. (사이트 → 프록시 서버 → PC)

플러그인 [plug-in]

  • 어떤 프로그램에 없던 새 기능을 추가하기 위해 「끼워넣는」부가 프로그램. 자체적으로는 실행능력은 없지만 특정한 프로그램 속에서 함께 실행되어 기능을 발휘한다. 원래는 하드웨어 분야에서 컴퓨터가 기본적으로 제공하지 않거나 부족한 기능을 보강하기 위한 장치란 뜻으로 사용되었으나 요즘에는 부가 소프트웨어라는 뜻으로 주로 사용된다. 예를 들어 인터넷 브라우저인 「넷스케이프」의 플러그인 프로그램인「리얼오디오」나 「엑티브X」등을 사용하면 원래 넷스케이프에서 지원하지 않는 음성이나 동영상, 3차원 영상도 즐길 수 있다.
  • cf.) config
    • 영어의 'configuration'에서 앞에 여섯개의 알파벳만을 따서 쓴 것 입니다.
    • 컴퓨터에서 쓰일 때는 시스템의 환경설정을 해주는 파일을 말 합니다.

POJO [Plain Old Java Object]

  • Plain Old Java Object 혹은 POJO는 처음에 javax.ejb 인터페이스를 상속받지 않은, 무거운 EJB와는 반대로 경량의 자바 객체를 지칭하는 말로 소개되었다.
  • 즉, POJO라는 이름은 특별하지도 않고, 특히 Enterprise JavaBean이 아닌 자바 객체를 강조한다. 이 이름은 Martin Fowler, Rebecca Parsons와 Josh MacKenzie에 의해 2000년 9월에 만들어졌다.
  • 프레임워크에 종속된 복잡한 객체에 반대되는 간단한 객체를 설명하기 위한 용어의 필요성이 많아짐에 따라 POJO라는 이름은 점점 널리 쓰이게 되었다.
  • POJO 대표적인 예로, JavaBean을 들 수 있는데, JavaBean은 기본 생성자와 멤버 필드에 접근할 수 있는 getter/setter 메소드를 가진 serializable(직렬화가 가능한)한 객체를 의미한다.
  • POJO를 이용한 디자인이 널리 쓰임에 따라 POJO를 기본으로 하는 스프링이나 하이버네이트와 같은 프레임워크에서도 생겼다.
  • 요즘에는 POJO는 (EJB 뿐만 아니라) 별도로 종속되지 않는 자바 객체를 통칭하여 의미한다.

클라우드 컴퓨팅 [Cloud Computing]

  • 인터넷 기반(Cloud)의 컴퓨터기술(Computing)을 의미하는 것으로, 여기에서 구름(Cloud)은 컴퓨터 네트워크 상에 숨겨진 복잡한 인프라 구조, 인터넷을 뜻한다. 클라우드 컴퓨팅은 사용자가 필요한 소프트웨어를 자신의 컴퓨터에 설치하지 않고도 인터넷 접속을 통해 언제든 사용할 수 있고 동시에 각종 정보통신 기기로 데이터를 손쉽게 공유할 수 있는 사용 환경이다. 즉, 개인이 웹에 접속해서 포토샵, 오피스 같은 프로그램을 작업할 수 있고 그 작업에 대한 저장도 웹에서 하게 된다. 결국 가상 공간에 한 서버(컴퓨터)만을 놓고 이 한 컴퓨터를 통해 여러 사람이 개인 작업을 할 수 있는 것이다. 은행의 ATM이나 항공기ㆍ열차의 실시간 좌석 예약 시스템이 대표적이다. 또한 Google Apps의 경우 웹 브라우저로 이용할 수 있는 일반적인 비즈니스 응용 프로그램들을 온라인으로 제공하고 소프트웨어와 데이터는 서버에 저장한다. 클라우드라는 용어는 1990년대에 거대한 규모의 ATM을 지칭하는 데서 쓰이다가, 소비자 중심의 웹 기반이 형성되는 21세기에 들어서야 클라우드 컴퓨팅이라는 용어가 널리 퍼지기 시작했다. 클라우드 컴퓨팅의 장점은, 사용자의 데이터를 신뢰성 높은 서버에 안전하게 보관할 수 있고, 기기를 가지지 못한 소외 계층도 공용 컴퓨터나 인터넷에 연결되기만 한다면 개인 컴퓨팅 환경을 누릴 수 있으며, 개인이 가지고 다녀야 하는 장비나 저장 공간의 제약이 사라진다는 점이다. 그러나 서버가 공격 당하면 개인 정보가 유출될 수 있고, 재해로 서버의 데이터 손상되면 미리 백업하지 않은 정보를 되살리지 못한다는 문제점도 있다.

애플리케이션 [application]

  • 애플리케이션 프로그램, 즉 응용프로그램의 줄임말, 사용자 또는 어떤 경우에는 다른 응용 프로그램에서 특정한 기능을 직접 수행하도록 설계된 프로그램이다. 애플리케이션의 예로는 워드프로세서, 웹 브라우저, 통신 프로그램 등이 포함된다.
  • 정보기술에서 말하는 애플리케이션이란 기술, 시스템 및 제품 등을 사용하는 것을 말한다.
  • cp.) OS를 기본 소프트웨어라고 한다면 애플리케이션 소프트웨어는 응용 소프트웨어라고 한다.
  • 애플리케이션은 문서 작성이나 표 계산, 이미지 처리, 게임, 웹 사이트 보기, 메일 송.수신 등 특정 목적으로 위해 만들어진 소프트웨어이다.

URI [Uniform Resource Indentifier, 보편적 자원 식별자]

  • 인터넷 서비스를 통해서 접근하고자 하는 정보 자원에 대한 통일된 식별 체계를 가리킨다. 텍스트, 음향, 영상, 스틸, 이미지, 애니메이션 등의 다양한 인터넷 자원을 식별해주는데, URI의 하위 집합으로는 URL, URN, URC가 있다. URI는 표준문서 RFC 2396에 정의되어 있다.

임베디드 시스템 [embedded system]

  • 특정한 제품이나 솔루션에서 주어진 작업을 수행할 수 있도록 추가로 탑재되는 솔루션이나 시스템.어떤 제품이나 솔루션에 추가로 탑재되어 그 제품 안에서 특정한 작업을 수행하도록 하는 솔루션을 말한다. 예를 들어 주된 용도가 전화인 휴대폰에 텔레비전 기능이 들어가 있다면, 텔레비전 기능(시스템)이 바로 임베디드시스템이다. 곧, 본 시스템에 끼워넣은 시스템이라는 뜻이다.
  • 첨단 기능이 들어 있는 컴퓨터, 가전제품, 공장자동화 시스템, 엘리베이터, 휴대폰 등 현대의 각종 전자·정보·통신 기기는 대부분 임베디드시스템을 갖추고 있다. 대개의 경우 그 자체로 작동할 수도 있지만, 다른 제품과 결합해 부수적인 기능을 수행할 때에 한해 임베디드시스템이라고 한다.
  • 컴퓨터의 경우에는 전용 동작을 수행하거나 특정 임베디드 소프트웨어 응용 프로그램과 함께 사용되도록 디자인된 특정 컴퓨터 시스템 또는 컴퓨팅 장치를 일컫는다. 일반적으로 범용 컴퓨터 또는 장치를 상업적으로 대체해 사용할 수는 없기 때문에, 특정한 임베디드 라이선스 제품에서 허용되는 사무자동화 및 개인 컴퓨터 기능은 사용이 제한된다. 그러나 임베디드 리눅스와 같은 프로그램은 일반 퍼스널컴퓨터와도 연동이 가능하다.
  • 컴퓨터 외에 휴대용 개인정보 단말기(PDA)에 들어 있는 음성솔루션, 텔레비전·전기밥솥·냉장고·자동차 등에 내장되어 있는 웹기능 등도 모두 임베디드시스템이다.

API [application programming interface]

  • 운영체제와 응용프로그램 사이의 통신에 사용되는 언어나 메시지 형식을 말한다. 운영체제나 C, C++, Pascal 등과 같은 언어로 응용 프로그램을 만들 때, 윈도우를 만들고 파일을 여는 것과 같은 처리를 할 수 있도록 1000여 개 이상의 함수로 구성되어 있다. API는 프로그래머를 위한 운영체제나 프로그램의 인터페이스로서 사용자와 직접 대하게 되는 그래픽 사용자 인터페이스나 명령형 인터페이스와 뚜렷한 차이가 있다.
  • API는 응용 프로그램이 운영체제나 데이터베이스 관리 시스템과 같은 시스템 프로그램과 통신할 때 사용되는 언어나 메시지 형식을 가지며, API는 프로그램 내에서 실행을 위해 특정 서브루틴에 연결을 제공하는 함수를 호출하는 것으로 구현된다. 그러므로 하나의 API는 함수의 호출에 의해 요청되는 작업을 수행하기 위해 이미 존재하거나 또는 연결되어야 하는 몇 개의 프로그램 모듈이나 루틴을 가진다.
  • 좋은 API는 모든 building block을 제공함으로써 프로그램 개발을 쉽게 해준다. 프로그래머는 그 block을 함께 합치기만 하면 된다. API가 프로그래머를 위해서 만들어지기는 했지만, 사용자 입장에서도 같은 API를 사용한 프로그램은 비슷한 인터페이스를 가지기 때문에 새로운 프로그램의 사용법을 배우기가 쉬워진다.

ERP [Enterprise Resource Planning]

  • Enterprise Resource Planning의 약자로 흔히 '전사적 자원관리'라고 한다.
  • 기업 전체를 경영자원의 효과적 이용이라는 관점에서 통합적으로 관리하고 경영의 효율화를 기하기 위한 수단이다. 쉽게 말해 정보의 통합을 위해 기업의 모든 자원을 최적으로 관리하자는 개념으로 기업자원관리 혹은 업무 통합관리라고 볼 수 있다.
  • 좁은 의미에서는 통합적인 컴퓨터 데이터베이스를 구축해 회사의 자금, 회계, 구매, 생산, 판매 등 모든 업무의 흐름을 효율적으로 자동 조절해주는 전산 시스템을 뜻하기도 한다.
  • 기업 전반의 업무 프로세스를 통합적으로 관리, 경영상태를 실시간으로 파악하고 정보를 공유하게 함으로써 빠르고 투명한 업무처리의 실현을 목적으로 한다.
  • ERP 유래
    • ERP는 MRP(자재소요량관리) MRPII(생산자원관리) MIS(경영정보시스템)등의 자원관리 기법의 발전과정을 거치면서 발전했으며, 지난 90년대 유럽 미국 일본 등 선진기업들이 다국적 회사를 운영하기 위해 종합적인 정보망을 구축하면서 도입됐다.
    • ERP란 용어는 미국의 "ERP벤더" 라는 소프트웨어 개발회사가 자사의 소프트웨어 제품에 붙인 명칭에서 유래했다. 그 후 미국의 시장조사, 컨설턴트 회사가 그것들을 ERP패키지라고 부른 것이 발단이라고 한다.
    • 현재 국내에서는 '전사적자원관리'로 번역되어 사용되고 있는데, 이는 SAP코리아라는 회사가 독일 본사에서 ERP 제품을 국내에 들여오면서 이렇게 번역한 것이 그대로 굳어졌다고 한다.
  • ERP 장점
    • ERP가 구축되면 기업의 생산, 영업, 구매, 재고관리, 회계부서 모두가 기업에 필요한 정보를 동시에 갖게돼 기업의 전 부문이 통합적으로 돌아가게 된다. 기업은 생산시간의 손실을 최소화하게 되며, 시스템상에서의 재고 정확도가 지속적으로 개선되는 효과를 거둘수 있다.
    • 특히 제조업체들은 제품가의 60-70%를 차지하는 부품조달을 합리적으로 기획하고 긴급히 발생한 새로운 생산수주상황에 실시간으로 대처할 수 있다.
    • ERP 시스템이 구축되면 또 기존에 1년에 한두번 또는 분기별로 시행하던 총실사방식에서 탈피, 순환실사가 가능해짐에 따라 언제든지 투명한 회계상황을 파악할 수 있게 된다. 또 주기적으로 재고부족이나 과잉순환 등의 흐름을 추적할 수 있게 돼 오류를 해결할 수도 있다.
    • 대표적인 ERP패키지로는 SAP R/3, 오라클 Application, BPCS 등이 있으며 국내 패키지로는 삼성 SDS의 UniERP, 영림원의 K시스템, 한국기업 전산원의 탑 ERP 등이 있다.

어노테이션(Annotation)

  • java5.0부터 지원되는 기술로, 기존 설정 파일(web.xml 등)에서 설정 내용들을 설정 파일에서 설정하지 않아도 해당 소스 내에 설정할 수 있는 방법을 제공함으로써 설정 파일의 크기를 줄이거나 설정 파일 자체를 없앨 수 있는 역할을 하는 기능이다.

WAS(Web Applicatio Server)

  • 웹 서비스용 애플리케이션들을 지원하는 미들웨어 소프트웨어를 말한다. 둘 이상의 애플리케이션의 정보 교환을 지원하는데 예를 들어, DB로부터 정보를 가져와 무선 핸드폰용 애플리케이션에게 정보를 전달하는 것도 WAS의 기능에 속한다.
  • WAS는 클라이언트와 서버 사이에 WAS 미들웨어라는 새로운 계층을 형성함으로써 3-tier 환경을 구축한다.

스크립트 [script]

  • 컴퓨터 프로세서나 컴파일러가 아닌 다른 프로그램에 의해 번역되고 수행되는 명령문의 집합.
  • 프로그래밍 언어가 아닌 언어로 작성한 짧은 프로그램이나 명령어들을 의미한다. 컴파일러로 작성된 C나 C++와 같은 언어들에 비해 제한된 능력을 지니고 실행속도도 느리지만 프로그램을 쉽고 빠르게 작성할 수 있다. 주로 제한된 능력을 가진 프로그램이나 컴파일된 기존 프로그램과 연결하여 재사용되는 프로그램들을 만드는 데 적당하다. 용도가 유용하여 기능이 꾸준히 업그레이드되고 있으며, 새로운 것도 계속적으로 개발되고 있다.
  • 유닉스 중심의 펄(PERL)과 넷스케이프의 자바스크립트(JavaScript), 마이크로소프트의 VBSscript 등이 유명하며, IBM의 REE와 선마이크로시스템즈의 Tcl/Tk 등도 잘 알려져 있다. 웹클라이언트와 웹서버 환경에서 보면 펄은 웹서버에서, 자바스크립트는 클라이언트에서, VBSscript는 서버와 클라이언트에서 동시에 실행된다.
  • 이 가운데 자바스크립트는 선마이크로시스템즈가 1996년 개발한 자바의 기능을 그대로 사용하면서도 프로그래밍을 쉽고 간편하게 할 수 있게 해 준다. 마이크로소프트의 인터넷 익스플로러 3.0에서도 지원되어 가장 많이 쓰이는 언어이다. VBSscript는 자바스크립트와 유사한 언어로 인터넷 환경에서 동작할 수 있게 설계된 것이다. 비주얼베이식 계열의 프로그래밍 언어로 인터넷 익스플로러에서 작동한다.

스레드 [thread]

  • 컴퓨터 프로그램 수행 시 프로세스 내부에 존재하는 수행 경로, 즉 일련의 실행 코드. 프로세스는 단순한 껍데기일 뿐, 실제 작업은 스레드가 담당한다. 프로세스 생성 시 하나의 주 스레드가 생성되어 대부분의 작업을 처리하고 주 스레드가 종료되면 프로세스도 종료된다. 하나의 운영 체계에서 여러 개의 프로세스가 동시에 실행되는 환경이 멀티태스킹이고, 하나의 프로세스 내에서 다수의 스레드가 동시에 수행되는 것이 멀티스레딩이다. ②나무 데이터 구조(tree data structure)에서 상위 노드의 식별과 나무 내의 정보 탐색을 촉진하는 포인터. ③게시판이나 토론의 장에서 최초 메시지에 대한 댓글들의 연속. 스레드는 수없이 많은 각각의 토론들을 관련 있는 것끼리 찾아서 읽거나 참여하는 데 도움이 된다.
  • cf.) 멀티 스레드 [multi-thread]
    • 1개의 응용 프로그램이 스레드(thread)로 불리는 처리 단위를 복수 생성하여 복수의 처리를 병행하는 것. 즉, 응용 프로그램 내에서의 다중 작업(multitasking) 처리를 말한다. 다중 작업과 같이 중앙 처리 장치(CPU)의 처리 시간을 매우 짧은 단위로 분할하여 복수의 스레드에 차례로 할당함으로써 복수의 처리가 동시에 이루어지는 것처럼 보인다.

SSH [secure shell]

  • secure shell의 약어. PGP와 마찬가지로 공개 키 방식의 암호 방식을 사용하여 원격지 시스템에 접근하여 암호화된 메시지를 전송할 수 있는 시스템. 따라서 LAN 상에서 다른 시스템에 로그인할 때 스니퍼에 의해서 도청당하는 것을 막을 수 있다.

버퍼 [Buffer]

  • 하나의 장치에서 다른 장치로 데이터를 전송할 경우에 양자간의 데이터의 전송속도나 처리속도의 차를 보상하여 양호하게 결합할 목적으로 사용하는 기억영역을 버퍼 또는 버퍼 에어리어라고 한다. 보통 중앙처리장치와 단말이나 다른 입출력장치사이의 데이터 송수신에는 입출력 영역으로서 버퍼를 필요로 한다. 또, 중앙처리장치와 주기억장치의 사이에 고속으로 동작하는 소용량의 버퍼 메모리(로컬 메모리라고도 한다)를 설치하여 처리의 고속화를 꾀하는 방식도 있다.
  • cp.) 컴퓨터의 주기억 장치와 주변 장치 사이에서 데이터를 주고 받을 때, 둘 사이의 전송 속도의 차이를 해결하기 위해 전송할 정보를 임시로 저장하는 고속 기억 장치
  • cf.) 버퍼 메모리 [Buffer Memory]
    • 일반적으로 주기억장치와 중앙처리장치의 사이에 명령이나 데이터를 일시 유지하는데 사용되는 고속의 기억장치를 가리킨다. 버퍼 메모리는 주기억장치보다 메모리용량은 작지만 보다 고속의 기억 소자를 사용함으로써 주기억장치와 중앙처리장치 사이의 정보의 흐름을 원활하게 한다. 또, 다른 견지(見地)에서 보면 기억의 계층구성을 실현하고 있다고도 표현할 수 있다.
    • 근년에는 다중레벨을 가진 버퍼 메모리를 실현한 컴퓨터도 있다. 또한 버퍼 메모리를 달리 로컬 메모리 혹은 캐시(cache)라고도 한다

빌드자동화 [Build automation]

  • 빌드 자동화는 개발자가 반복적으로 수행하는 다양한 작업을 자동화 또는 스크립트로 만드는 행위로, 소스코드를 바이너리 코드로 컴파일하기, 바이너리 코드를 패키징하기, 테스트 수행하기, 운영시스템으로 배포하기, 관련된 문서 생성하기 작업을 포함한다.
  • cf.) 빌드툴은 소스코드를 컴파일/테스트/패키징/배포/문서화하는 작업을 지원하는 툴로 이해하면 되겠다. 작업 순서는 일반적으로 아래와 같이 수행된다.
    • 개발자가 작성한 소스코드(Source Code)를 컴파일(Compile)하여 컴퓨터가 이해할 수 있는 언어(바이너리 코드)로 바꾸기.
    • 정상적으로 작동하는지 테스트하기.
    • 관련된 리소스(resource, 자원) 및 바이너리 코드를 압축하여 묶기(Packaging).
    • 실제 운영환경(또는 테스트환경)에 배포(deploy)하기
    • 관련된 문서 만들기

바인딩

  • 프로그램 언어에서 어떤 대상물의 이름을 그것이 나타내는 실제의 대상물과 연결하는 것.
  • 프로그래밍 용어로서, 각종 값들이 확정되어 더 이상 변경할 수 없는 구속(bind) 상태가 되는 것. 프로그램 내에서 변수, 배열, 라벨, 절차 등의 명칭,
  • 즉 식별자(identifier)가 그 대상인 메모리 주소, 데이터형 또는 실제값으로 배정되는 것이 이에 해당되며,
  • 원시 프로그램의 컴파일링 또는 링크 시에 확정되는 바인딩을 정적 바인딩(static binding)이라 하고, 프로그램의 실행되는 과정에서 바인딩되는 것을 동적 바인딩(dynamic binding)이라고 한다.
  • 프로그램 작성에서는 바인딩을 가급적 뒤로 미루도록 권고하고 있다.

빅데이터 [big data]

  • 데이터의 생성 양ㆍ주기ㆍ형식 등이 방대한 데이터
  • 데이터의 생성 양ㆍ주기ㆍ형식 등이 기존 데이터에 비해 너무 크기 때문에, 종래의 방법으로는 수집ㆍ저장ㆍ검색ㆍ분석이 어려운 방대한 데이터를 말한다. 빅데이터는 각종 센서와 인터넷의 발달로 데이터가 늘어나면서 나타났다. 컴퓨터 및 처리기술이 발달함에 따라 디지털 환경에서 생성되는 빅데이터와 이 데이터를 기반으로 분석할 경우 질병이나 사회현상의 변화에 관한 새로운 시각이나 법칙을 발견할 가능성이 커졌다. 일부 학자들은 빅데이터를 통해 인류가 유사 이래 처음으로 인간 행동을 미리 예측할 수 있는 세상이 열리고 있다고 주장하기도 하며, 이를 주장하는 대표적인 학자로는 토머스 멀론(Thomas Malone) 미국 매사추세츠공과대학 집합지능연구소장이 있다.
  • 빅데이터는 초대용량의 데이터 양(volume), 다양한 형태(variety), 빠른 생성 속도(velocity)라는 뜻에서 3V라고도 불리며, 여기에 네 번째 특징으로 가치(value)를 더해 4V라고 정의하기도 한다. 빅데이터에서 가치(value)가 중요 특징으로 등장한 것은 엄청난 규모뿐만 아니라 빅데이터의 대부분은 비정형적인 텍스트와 이미지 등으로 이루어져 있고, 이러한 데이터들은 시간이 지나면서 매우 빠르게 전파하며 변함에 따라 그 전체를 파악하고 일정한 패턴을 발견하기가 어렵게 되면서 가치(value) 창출의 중요성이 강조되었기 때문이다.

배포[deploy]

  • 배포는 개발된 결과물(소프트웨어)을 시장에 발표하는 것을 의미한다. 웹 애플리케이션의 경우 개발된 결과물을 실제 서비스로 사용되는 서버 장비에 복사하는 과정이 배포 과정이다. 예를 들어, 개발한 JSP 파일, 서블릿 파일, 이미지 파일, 자바 스크립트 파일등을 실 운연 서버에 FTP나 SCP 등을 이용해서 복사하는 과정이 배포 과정이다.

메타데이터 [Meta Data]

  • 메타데이터라는 말은 영어로 Meta Data 라고 쓰고 많은 데이터를 갖고 있을 때 그 데이터를 정의하고 설명해 주는 데이터를 말합니다.
  • 인터넷 웹html 문서에서는 메타태그(META TAG) 안의 내용이라고 할 수 있지요.이것은 어떠한 ‘무슨 데이터이다’라고 설명해 주는 데이터가 메타데이터이다 .메타데이터의 내용에는 자료 데이터의 종류나 크기 등의 설명도 포함된다.

매핑(Mapping)

  • 매핑이란 해당 값이 다른 값을 가리키도록 하는 것이다.
  • 다른 데이터 셋과 대응 관계를 가지고 있는 일련의 데이터 셋을 지칭한다.
  • 메모리나 디스크 상에 현재 저장되어 있는 데이터나 객체 목록을 지칭한다.
  • 디스크 드라이브에 경로나 디스크 문자 (A:, C:, R: 등)를 할당하는 것으로, 특히 드라이브 매핑이라고 부르기도 한다.
  • 일련의 객체들을 한 장소에서 다른 곳으로 이동시키는 것이다. 예를 들면, 디스크 상의 프로그램 모듈들은 메모리에 사상(寫像)된다.
  • 메모리 내의 그래픽 이미지는 비디오 화면상에 사상된다. 하나의 주소는 다른 주소에 사상된다.
  • 논리적 데이터베이스 구조는 물리적 데이터베이스에 사상된다. 매핑을 위해서는 대체로 한 형식에서 다른 형식으로 변환하는 것이 필요하다.
  • 일련의 객체들을 다른 객체들에 관련시키는 것이다. 예를 들어, 어떤 공급자의 프로토콜은 OSI 참조 모델에 사상된다.

마이그레이션[migration, 이주(移住)]

  • 정보기술에서, 마이그레이션이란 한 운영환경으로부터, 대개의 경우 좀더 낫다고 여겨지는 다른 운영환경으로 옮겨가는 과정을 말한다.
  • 예를 들어, 윈도우NT 서버를 윈도우2000 서버로 옮겨가는 것을 마이그레이션이라고 볼 수 있는데, 그 이유는 새로운 특색들이 이용된다는 것과, 이전의 설정치들을 변경할 필요가 없다는 것에 대한 확신, 그리고 현재의 애플리케이션들이 새로운 환경에서도 계속 운영됨을 보장하는 단계 등이 수반되기 때문이다.
  • 마이그레이션은 또한 윈도우NT 환경으로부터 유닉스 기반의 운영체계로 옮기는 것 (또는 그의 반대방향의 경우도 마찬가지다)을 의미할 수도 있다.
  • 마이그레이션은 새로운 하드웨어나, 새로운 소프트웨어, 또는 둘 모두가 바뀌는 환경으로의 이주를 포함할 수 있다.
  • 마이그레이션의 규모에는, 단일 시스템이 옮겨가는 것과 같은 소규모 마이그레이션도 있지만,
  • 많은 시스템들이 새로운 애플리케이션이나 새롭게 재설계된 네트워크로 옮겨가게 되는 대규모 마이그레이션도 있을 수 있다.
  • 마이그레이션은 한 종류의 데이터베이스에서 다른 종류의 데이터베이스로 데이터를 옮기는 경우도 될 수 있다. 이것은 대체로 이전의 데이터베이스로부터의 출력이 새로운 데이터베이스의 입력이 되도록 어떤 공통된 형식으로 데이터를 변환하는 작업이 필요하다. 새로운 데이터베이스는 다르게 구성될 수 있기 때문에, 마이그레이션이 진행중인 파일들을 처리할 수 있는 프로그램을 작성하는 것이 필요할 수도 있다.
  • 마이그레이션은 또한 데이터를 한 저장장치에서 다른 저장장치로 옮기는 과정을 의미하는 데에도 사용된다.

RSS [RDF Site Summary, Rich Site Summary, Really Simple Syndication]

  • 인터넷 사용자에게 자동으로 배포할 목적으로 새로운 소식이나 콘텐츠를 기술하는 방식이다. 사용자가 관심을 가지고 있는 웹 사이트의 갱신 유무를 쉽게 확인하고, 웹브라우저를 이용하여 배포된 정보를 쉽게 얻을 수 있도록 해준다. 배포되는 콘텐츠로는 문자는 물론 소리, 영상과 같은 멀티미디어 자료도 포함한다. W3C에서 제시한 RDF(Resource Description Framework, 자원 기술 개념)에 부착되는 XML로 된 애플리케이션의 일종이다.

디버깅 [debugging]

  • 오류 수정. 컴퓨터 프로그램의 잘못을 찾아내고 고치는 작업. 일단 작성된 프로그램들이 정확한가(즉 잘못 작성된 부분이 없는가)를 조사하는 과정. 이 작업은
    • ① 기계에 넣기 전에 책상 위에서 주어진 문제대로 프로그램이 작성되었는가를 순서도와 메모리의 작업 영역표에 실제 데이터를 넣어서 수동 작업으로 정확한 결과가 나오는가를 검사하는 데스크 상의 검사와
    • ② 컴퓨터를 이용한 표준적 데이터로 메인 루틴을 조사하는(이때 예외 사항이 포함된 데이터와 오류가 있는 데이터도 함께 이용한다) 컴퓨터를 사용한 검사,
    • ③ 실제 데이터를 사용하는 조사 등 세 단계로 나누어 진행된다. 또한 이 작업은 프로그램의 한 스텝 한 스텝씩을 추적해가는 추적(trace) 기능을 이용해도 좋지만, 프로그램 처리 내용이나 기억 장치의 내용을 덤프하여 디버그 보조기(debugging aid)를 이용하는 것이 바람직하다.

데몬 [daemon]

  • 주기적인 서비스 요청을 처리하기 위해 계속 실행되는 프로그램을 말한다. 디먼은 수집된 요구들을 또다른 프로그램이나 프로세스들이 처리할 수 있도록 적절히 전달한다. 사전적 의미에 따르면, 신화에 나오는 디먼은 "신들과 사람들 중간에 위치하고 있는 일종의 수호신"이라고 되어 있다.

게이트웨이[gateway]

  • 한 네트워크에서 다른 네트워크로 들어가는 입구 역할을 하는 장치. 근거리통신망(LAN)과 같은 하나의 네트워크를 다른 네트워크와 연결할 때 사용된다. 게이트웨이가 필요한 것은 네트워크마다 데이터를 전송하는 방식이 다르기 때문이다. 다시 말해 각각의 네트워크는 다른 네트워크와 구별되는 프로토콜(데이터를 처리하는 방식으로 미리 정해 놓은 약속)로 데이터를 전송한다. 다른 프로토콜을 사용하는 네트워크와 직접 연결하면 데이터를 공유할 수 없다. 흔히 인터넷으로 보내온 전자우편을 PC통신 서비스에서도 받아 볼 수 있는데, 이것은 인터넷과 PC통신 서비스 회사의 통신망을 중개하는 게이트웨이가 있기 때문이다
  • cp.)복수의 컴퓨터와 근거리 통신망(LAN ; local area network) 등을 상호 접속할 때 컴퓨터와 공중 통신망, LAN과 공중 통신망 등을 접속하는 장치를 가리킨다. 실제로는 미니컴퓨터 등이 사용되고 있으며, 게이트웨이 프로세서(gateway processor)라고도 불린다. 일반적으로 컴퓨터와 단말기를 공중 통신망을 경유하여 접속할 경우에는 게이트웨이로서는 대규모 장치를 필요로 하지 않는다. 그러나 네트워크 간 통신을 행할 때에는 통신 속도의 제어, 트래픽 제어, 네트워크 사이에서의 컴퓨터 어드레스의 변환 등 복잡한 처리를 행하기 때문에 게이트웨이 프로세서로서는 적지 않게 미니컴퓨터 정도의 능력을 갖는 장치가 필요하게 된다. 요즘은 원래의 정의 대신에 「라우터(router)」라는 용어가 대신 사용된다. 게이트웨이는 자체 프로세서와 메모리를 가지고 있으며, 프로토콜 변환이나 대역폭 변환을 하기도 한다. 일반적으로 게이트웨이는 근거리 통신망 프로토콜이 하나 이상 설치되어 있는 큰 규모의 네트워크에서 볼 수 있는데, 예를 들어 키네틱 사의 패스트패스(fastpath)라는 애플토크(AppleTalk)와 이더넷(Ethernet) 네트워크를 연결할 수 있다.