본문으로 바로가기

IT 용어 정리

책이나 API 문서에서 자주 볼 수 있는 용어에 대해 알아보도록 합니다.





DRY 원칙 

DRY는 Don’t Repeat Yourself(자신을 반복하지 말 것)의 약자다. 

DIE라고 하기도 한다 : Duplication is Evil.(중복은 악이다.) 

이 원칙은 다음과 같다. “모든 지식은 그 자체로 시스템 안에서 유일해야 하고, 모호해선 안 되며, 권위 있게 표현돼야 한다.” 

일반적으로 대부분의 어플리케이션은 반복적인 일을 자동화하는 게 목적이다. (일반적으로 컴퓨터가 그렇다.) 

이 원칙은 모든 코드에서 유지돼야 한다. 웹 어플리케이션에서조차 마찬가지다. 

같은 코드가 어디서도 반복되면 안 된다.



코드를 리팩토링하라 

리팩토링한다는[역자 주: refactor는 단순히 고친다는 것을 의미하는 게 아니라 리팩토링이라는 기법을 의미하는 것이기에 그냥 리팩토링이라고 번역했습니다.] 것은, 코드의 기능을 바꾸지 않으면서 코드를 변경하는 것을 말한다. 

코드 가독성과 질을 높이기 위한 목적으로 “clean up”을 한다고 생각해도 된다. 

리팩토링은 버그를 잡는다거나 기능을 추가한다거나 하는 게 아니다. 

아마 바로 전날 작성한 코드를 리팩토링할 것이다. 아직 머리 속에 코드가 생생히 남아 있을 때 말이다. 

두 달 후에도 여전히 코드가 읽기 쉽고 재사용하기 쉽게 만드는 것이다. 

모토는 이거다. 

“빨리 고치고(refactor), 자주 고쳐라” 리팩토링 작업을 하는 동안 아마도 “최고의 방법”을 적용하게 될 것이다.



Short-Circuit Evaluation(SCE)

여러 말로 표현되지만 일반적으로 최단거리 연산이라고 하며, 결과가 이미 나온것에 대해서 더이상 확인하지 않는다는 의미

다시말해, 이미 연산 결과가 나온 것에 대해서 더이상 확인하지 않겠다는 의미



유효성 검사

입력 양식에 제대로값이 들어갔는지 확인하는 것을 유효성 검사라고 합니다.




CDN

CDN은 Content Delivery Network 의 약자로 사용자에게 간편하게 콘텐츠를 제공하는 방식을 말합니다.

즉, CDN은 세계 곳곳의 서로 다은 여러 데이터 센터에 파일의 복사본들을 배치하여, 동일한 URL 을 유지하면서도 더 빨리 사용자에게 콘텐츠를 제공,전송해 주는 것입니다.

  • 콘텐츠 전송 네트워크(Content delivery network 또는 content distribution network (CDN))는 콘텐츠를 효율적으로 전달하기 위해 여러 노드를 가진 네트워크에 데이터를 저장하여 제공하는 시스템을 말한다. 
  • 인터넷 서비스 제공자에 직접 연결되어 데이터를 전송하므로, 콘텐츠 병목을 피할 수 있는 장점이 있다.



인자 vs 매개변수 차이점

인자(Argument) 는 어떤 함수를 호출시에 전달돼는 값을 말하고 매개 형식 변수(Parameter) 는 그 전달된 인자를 받아들이는 변수를 말합니다.

여기서 포인트는 인자는 값, 매개 형식 변수는 말 그대로 변수라는 점입니다.



RSS 문서

RSS 문서는 뉴스 등 웹 콘텐츠를 쉽게 배급, 배포할 수 있게 만든 규격화된 형태의 XML 문서입니다.



요청(Request)과 응답(Response)

요청과 응답을 용어로 생각하면 혼란스러운 개념이 될 수 있지만, 쉽게 상대방에게 원하는 의사를 전달하는 것을 요청(request)이라 생각하고, 이에 대한 결과로 데이터를 보내주는 행위를 응답(Response)이라고 생각하는 것이 더 편합니다.

예를 들어 음식점에서 주문을 하는 것은 요청이고, 이에 대하여 음식을 서비스하는 것이 응답입니다.

브라우저에서 가장 많이 하는 요청은 주소 표시줄을 통해서 특정 서버에 정보를 요구하는 것이고, 여기에 맞는 데이터를 보내주는 작업이 응답에 속합니다.

서버측(Server-side) 프로그래밍은 이런 응답을 보낼 때 좀 더 사용자에게 맞는 내용을 만들 수 있는 기술들을 의미하고, 이런 결과를 동적(Dynamic) 자원이라고 합니다.

반대로 언제 어디서나 누구나 같은 결과를 보는 데이터를 정적(Static) 자원이라고 합니다.

HTML 이나 이미지파일, 미디어 파일 등이 보통 여기에 속합니다.



플랫폼이 된 브라우저

HTML5 변환의 핵심은 브라우저의 기능 증대와 관련이 있습니다.

브라우저가 이미 상당한 기능을 하기 때문에 브라우저를 단순히 데이터를 보여주는 뷰어가 이니라 프로그램을 실행할 수 있는 환경인 플랫폼(Platform) 으로 보자는 것입니다.

플랫폼을 쉽게 설명하자면 운영체제에 비유해 볼 수 있습니다.

즉, 윈도우라는 운영체제가 있기 때문에 MS Office 같은 프로그램을 실행할 수 있듯이 브라우저라는 플랫폼에 필요한 데이터만 제공하면 하나의 애플리케이션처럼 브라우저 환경 위에서 동작하는 방식을 의미합니다.

다시 말해서 작성된 HTML 페이지를 프로그램으로 간주하고 이 프로그램이 실행되는 운영체제를 브라우저라고 생각하는 발상이 HTML5 의 핵심입니다.



운영체제의 호환성과 HTML5 스펙

HTML 페이지를 프로그램으로 간주한다면 현존하는 브라우저의 종류는 마치 다양한 운영체제에 비유해 볼 수 있습니다.

운영체제가 리눅스, 윈도우, 맥, iOS 와 같이 다양하듯이 브라우저도 IE, 크롬, 사파리, 파이어폭스, 오페라 등 다양합니다.

작성된 HTML 페이지가 프로그램이므로 이제 이것을 실행하는 브라우저들은 호환성을 위해 공통된 기능을 구현해야 하는데 그것이 바로 HTML5의 스펙(Spec)이 됩니다.

HTML5 에서는 다음과 같은 주요 기능들을 브라우저가 구현해야 합니다.

  • 네트워크 연결없이 브라우저에 보관된 HTML 과 자원들을 통해서 실행할 수 있는 오프라인 기능
  • 다른 도메인의 이미지나 데스크톱에 있는 파일을 읽거나 쓰는 File Access 기능
  • 미디어 플레이어가 없어도 실행할 수 있는 오디오, 비디오 기능
  • 플래시 없이 애니메이션 효과를 실행할 수 있는 CSS3 기능
  • HTML 을 모바일 화면에 맞게 조절할 수 있는 모바일 기능(미디어쿼리)
  • 브라우저 내에 데이터베이스를 작성하고 사용할 수 있는 스토리지 기능
  • 실시간으로 문자열 데이터를 주고받을 수 있는 웹 소켓(WebSocket) 기능


예를 들어 브라우저가 오디오 기능, 비디오 기능, 캔버스 기능 등의 HTML5 스펙을 구현하고 있는 경우에 HTML 페이지에서 실행될 동영상 파일 등을 지정해 주기만 하면 나머지는 이들 브라우저가 처리하게 됩니다.

앞서 이야기한 브라우저가 플랫폼이 되고 HTML 페이지는 프로그램이 된다는 발상에서 시작한 HTML5 의 스펙은 웹 앱(Web App) 이라는 새로운 용어를 만들어 내게 됩니다.



자바스크립트와 MVC(Model-View-Controller)

자바스크립트는 웹 페이지에서 간단한 동작을 할 수 있도록 작성된 스크립트 언어이지만, 브라우저의 역할이 커지면서 자연스럽게 자바스크립트의 중요성도 커지게 되었습니다.

규모가 커지면서 프로그래밍은 점차 디자인 패턴이나 아키텍처 패턴이라고 부르는 일종의 가이드나 관습이 생기는데, 이런 관습 중의 하나가 MVC 패턴입니다.

MVC는 쉽게 생각하면 프로그램이 처리하는 영역을 화면(View)과 데이터(Model), 기능(Controller)으로 나누어서 설계하고, 이들 간의 상호작용을 통해서 프로그램이 실행되는 전체 구조를 설계하는 방식입니다.

따라서 기능이 다양한 언어들에서 공통으로 사용되는 패턴이기도 합니다.

자바스크립트는 이에 비해 비교적 브라우저에서 화면에 보조적인 처리만 했기 때문에, 최근까지 그다지 주목받지 못했지만, 다른 스크립트 언어들의 발전과 더불어 점점 더 복잡해지고 엄격하게 설계되고 있습니다.


MVC 패턴을 단순히 접근하자면 다음과 같을 수 있습니다.

  • 데이터에 해당하는 모델(Model)의 역할은 브라우저가 처리해야 하는 HTML 태그로 처리
  • 순수한 데이터를 어떤 형태로 화면에 보여주는지를 결정하는 레이아웃(View)의 역할은 CSS로 처리
  • 사용자의 판단을 동적으로 처리하는 컨트롤러(Controller)의 역할을 자바스크립트로 처리



브라우저와 자바스크립트

Model-View-Controller 구조에서 HTML은 데이터인 Model을 CSS는 화면을 구성하는 View 를 처리한다면 마지막으로 자바스크립트는 브라우저라는 작은 세계에서 Controller 의 역할을 수행합니다.

자바스크립트의 이해를 돕고자 원래 스크립트(Script)라는 단어를 어디에서 사용했는지 생각해 보면 자바스크립트가 어떤 식의 역할을 하는지 조금 도움이 될 것입니다.

스크립트는 영화나 연설 등에 사용하는 원고를 의미합니다.(원래 스크립트라는 단어는 연극 대본을 의미합니다)

즉, 연설자나 배우가 어떤 장면에서 어떻게 해야 하는지, 알려주는 내용입니다.

이러한 스크립트를 받은 사람은 스크립트를 보면서 자신이 어떻게 행동해야 하는지를 판단하게 되는데 이런 작업을 해석(Interpreter)한다고 표현합니다.

이러한 의미에서 스크립트 언어들은 작업을 지시하는 대본 정도의 의미가 있습니다.

자바스크립트를 이런 의미로 생각해 보자면 HTML 문서를 표현하는 브라우저에게 부탁하는 작업 명세서라고 할 수 있습니다.

브라우저들은 각자 자바스크립트 해석기를 가지고 있으며 이를 이용해서 HTML 에 선언되거나 링크로 처리된 자바스크립트를 해석하게 됩니다.



CSS가 HTML 문서의 상단에 있어야 하는 이유

어떠한 프로그래밍이건 코딩 컨벤선(코딩 규칙)이라는 것이 있습니다.

HTML에서는 일반적으로 CSS의 선언을 HTML 문서의 위쪽에 두는데 그 이유는 CSS를 이용해서 렌더링 엔진이 화면에서 어떤 방식으로 처리(보이거나 안 보이게 혹은 어떤 색상을 사용할 것인가?)하는 기준을 빨리 제공할 수록 렌더 트리를 구성하기가 쉬워지기 때문입니다.

브라우저가 전달받는 HTML은 항상 맨 위에서부터 차례대로 처리됩니다. 

따라서 렌더링 엔진이 참고할 수 있는 부분을 위쪽에 두게 되면 화면에서의 '선별 기준'을 미리 파악할 수 있습니다.

실제로 렌더링 엔진이 본격적으로 작업하는 부분이 바로 화면에 나오는 <body> 태그이기 때문에 특별한 경우가 아니라면 <body> 태그가 나오기 전에 CSS를 지정하는 것이 일반적입니다.



렌더링(rendering)

HTML 코드는 웹 브라우저에서 읽어온 후 화면에 시각적으로 표시하게 되는데, 이 과정을 "렌더링"이라고 합니다.



코드의 응집성

코드의 본래 목적에 맞도록 성격이 명확한 것을 의미합니다.

예를 들어 로직을 처리하는 객체는 로직만을 담당하고 화면을 처리하는 객체는 화면만을 담당하는 코드를 응집성이 높은 코드라고 표현할 수 있습니다.



URI, URL, URN

URI 는 "Uniform Resource Identifier" 의 약자로, 웹에 있는 다양한 자원을 식별할 수 있는 수단을 의미합니다.

URI 의 가장 보편적인 형태로는 URL(Uniform Resource Locator)이 있습니다.

URL 은 URI 의 한 형태이자, 부분 집합(범주)이라고 할 수 있습니다. 

URL 은 자원에 접근하는 데 필요한 프로토콜, 도메인, 파일의 경로 및 접근할 파일명 등으로 구성되어 있습니다.

URN(Uniform Resource Name)은 불변의 의미를 가지는 이름으로 인터넷 자원을 찾는 방식을 말합니다.

URN 은 경우에 따라 URL 이 될 수도 있기 때문에 비슷하게 보일 수 있습니다. 하지만 URL 이 프로토콜, 도메인 등 자원의 위치를 알아야 자원을 찾을 수 있는 형식인데 비해,

URN 은 자원의 이름만으로 자원을 찾을 수 있다는 것이 다릅니다.



컴파일(Compile)

사람이 컴퓨터에게 일을 시키기 위해서는 컴퓨터와 사람간의 공통적인 대화 수단이 필요합니다.

그러나 불행하게도 컴퓨터는 사람의 말을 이해하지 못하고, 사람 또한 컴퓨터가 인식할 수 있는 기계어를 알지 못합니다.

그래서 사람과 컴퓨터가 이해할 수 있도록 중간에서 통역을 이용하여 서로 간의 의사소통이 가능하도록 하였는데 이러한 통역의 역할을 컴파일이라고 합니다.



ASP(Active Server Page)

ASP 는 웹 서버에서 많이 사용하고 마이크로소프트 IIS(Internet Information Server)에서 만든 서버 기반 기술로서, WWW 이나 인트라넷에 사용할 수 있는 대화형 HTML 페이지를 제작할 수 있도록 고안된 언어입니다.



PHP(Personal HomePage Tools, Professional HyperText Preprocessor)

PHP 는 1994년 Rasmus Lerdoft 가 처음 고안하였고, 1995년 초부터 외부에서 사용되었습니다.

PHP 는 서버에서 해석되는 스크립트 언어로서, 유사한 언어에는 MS 사의 ASP 가 있습니다.

이러한 서버용 언어는 서버에서 해석한 후 그 결과를 HTML 형태로 만들어 클라이언트(웹 브라우저)로 보내므로 내부 소스 코드를 볼 수 없습니다.

PHP 는 ASP 처럼 특정 영역에서만 동작하지 않고 C 언어의 문법과 유사하기 때문에 기존의 개발자들이 좀 더 쉽게 접근할 수 있으며, 적은 명령어로 프로그래밍이 가능하다는 장점이 있습니다.

그러나 컴포넌트의 문제 등 지원하는 기능이 미약하다는 단점도 있습니다.



Servlet : 서블릿(Servlet : Server + Applet)

서블릿은 썬(Sun)에서 발표한 기술로, 자바 언어를 기반으로 동적인 콘텐츠를 생성하는 기술을 제공합니다.

서블릿은 자바와 거의 같은 형식으로 되어 있기 때문에 쉽게 작성할 수 없습니다.

또, 코드에 HTML 코드가 혼재되어 있어서 작업의 분리적인 측면에서 볼 때 효율성이 떨어진다는 단점이 있습니다.


JSP(Java Server Pages)

기본적으로 JSP는 자바 서블릿(Java Servlet)과 같습니다.

JSP 는 웹 전용 스크립트 언어로 PHP 나 ASP 와 문법은 비슷하지만 자바의 막강한 기능을 그대로 가지고 있기 때문에 더욱 강력한 서버측 언어입니다.

JSP 는 서블릿처럼 자바를 기반으로 만들어졌으며, 서블릿과 달리 ASP 나 PHP 처럼 HTML 태그 사이에 자바 코드가 들어간 형태입니다.

JSP 는 스크립트 언어 형식으로 프로그램을 작성할 수 있으며, 사용자가 직접 태그를 정의해서 사용할 수 있는 사용자 정의 태그 기능으로 인해 보다 쉽게 프로그램을 개발하고 효율적으로 웹 사이트를 구성할 수 있습니다.



환경변수

윈도우 운영체제에 등록된 정보(값을 등록, PATH라는 변수에 등록)



서버측 스크립트 vs 클라이언트측 스크립트

프로그래밍 언어는 크게 클라이언트 측(Client Side) 스크립트 언어와 서버 측(Server Side) 스크립트 언어로 나뉘어집니다.

대표적인 클라이언트 측 스크립트 언어로는 자바스크립트가 있고, 서버 측 스크립트 언어로는 PHP, ASP, JSP 가 있습니다.

두 스크립트 언어의 차이점은 클라이언트 측 스크립트 언어의 경우 방문자의 컴퓨터에서 프로그래밍이 수행되지만, 서버 측 스크립트 언어는 서버에서 프로그래밍이 수행됩니다.

그러므로 사이트에서 동적인 사용자 환경을 개발할 때는 클라이언트 측 언어를 사용하고, 서버 측 데이터베이스에서 저장된 데이터를 불러오거나 또는 방문객이 전송한 데이터를 저장할 때는 주로 서버 측 스크립트 언어를 사용합니다.

예를 들어, 사이트 방문객이 로그인 폼에 아이디와 비밀번호를 입력하였다고 가정하겠습니다. 

그 작성을 완료한 후 로그인 버튼을 눌렀을 때 등록된 회원인지를 검사하기 전에, 먼저 올바른 아이디와 비밀번호의 형식에 맞게 작성했는지 검사가 이루어져야 합니다.

이때는 방문자 컴퓨터에서 프로그래밍이 수행되어 올바른 아이디와 비밀번호 형식인지 체크해도 되므로 클라이언트 측 언어인 자바스크립트 또는 제이쿼리를 사용합니다.

그리고 이어서 형식에 올바르게 아이디와 비밀번호를 작성하였다면 액션(action) 페이지인 서버 사이드 스크립트 페이지에 방문자가 입력한 아이디와 비밀번호 데이터를 전송하여 데이터베이스에서 일치하는 아이디와 비밀번호가 존재하는지의 여부를 검사합니다.

검사해서 만일 존재할 경우에는 사용자에게 이를 알려주고 존재하지 않을 경우에는 그에 상응한 결과값을 사용자에게 알려줄 수 있습니다.



웹 서버(Web Server)와 웹 호스팅(Web Hosting)의 차이점

웹 서버와 웹 호스팅은 둘 다 방문객인 클라이언트(Client)에게 웹 서비스를 제공하는 것입니다.

하지만 웹 서버의 경우는 사용자가 직접 컴퓨터에 서버(Server)를 구축하여 웹 서비스를 제공하므로 웹 서버에 대한 전문 지식이 있어야 하며, 전용 회선을 갖추고 있어야 사용할 수 있습니다.

웹 호스팅의 경우는 이미 서버가 구축된 외부 컴퓨터에 다수의 이용자가 소량의 저장 공간을 나눠 임대하여 사용하는 것을 가리킵니다.

즉, 외부 서버 컴퓨터에 일정한 저장 공간을 임대하여 서비스를 제공하는 것을 '웹 호스팅'이라고 합니다.

그러므로 서버에 대한 전문 지식이 없어도 사용할 수 있으나, 저장 공간 용량의 제한이 있다는 단점이 있습니다.


자바스크립트의 스코프

자바스크립트에서 스코프(scope)는 코드가 실행되는 컨텍스트(변수영역, 실행영역, 유효범위 등의 용어로 알려져 있기도 하다. 실제로는 스코프라는 용어가 가장 많이 사용되고 있다)이며, 전역 스코프, 지역 스코프(함수 스코프), eval 스코프로 구분됩니다.



스코프 체인(Scope Chain)

함수를 포함한 함수는 서로 연결된 실행 스코프를 만들며 이렇게 연결된 실행 스코프를 스코프 체인이라 부른다.

그래서 자바스크립트는 변수를 찾을 때 스코프의 계층 구조에 기반한 검색 체인을 거슬러 올라가며 추적하게 된다.



코딩 패턴(Pattern)이란?

패턴은 넓은 의미에서 반복되는 사건이나 개체의 주제로 물건을 만드는데 쓸 수 있는 틀이나 모형이 될 수 있는 것을 의미합니다.

소프트웨어 개발에서의 패턴이란 일반적인 문제에 대한 해결책을 가리킵니다.

곧바로 복사해서 붙여넣을 수 있는 코드 형태의 답이 아니라, 모범적인 관행, 쓰임새에 맞게 추상화된 원리, 어떤 범주의 문제를 해결하는 템플릿에 더 가깝습니다.

패턴을 알아보는 것은 다음과 같은 이유로 중요합니다.

  • 패턴은 검증된 실행방법을 사용하여 쓸데없이 시간을 낭비하지 않고 더 나은 코드를 작성할 수 있도록 도와준다.
  • 턴은 일정 정도의 추상화 단계를 제공한다. 인간의 뇌가 주어진 시간 동안 생각할 수 있는 정보의 양에는 한계가 있다. 따라서 복잡한 문제를 고민할 때는 저수준의 세부 사항에 신경쓰지 않도록, 자기 완결성을 갖춘 구성요소(패턴)들을 사용하여 설명하는 것이 도움이 된다.
  • 패턴은 먼 거리에 떨어져 얼굴을 보지 못한 채 행해지는 개발자와 팀 간의 커뮤니케이션에도 도움이 된다. 그저 특정 코딩 기법이나 접근 방법에 이름을 붙이는 것만으로도 모두가 같은 이야기를 하고 있다는 사실을 쉽게 확인시켜 준다. 예를 들어 "즉시 함수"라고 말하는 것(또는 생각하는 것)이 '함수를 괄호로 감싸고 마지막에 다른 괄호 묶음을 두어 정의한 곳에서 바로 실행되게 한 것' 보다 가독성면에서 더 쉽다.



자바스크립트의 객체(Object)란?

객체는 사실 매우 간단하다. 

매우 많은 기능을 가지고 있으니 뭔가 특별할 것 같지만 객체는 단지 이름이 지정된 프로퍼티의 모음이며, 키-값 쌍(다른 언어의 연관배열과 거의 동일한) 이루어진 목록입니다.

객체의 프로퍼티가 함수(함수 객체)일 경우에 이를 메소드(method)라고 부릅니다.



믹스인(Mixins)

팀 협력이 좀 더 원활하게 이루어질 수 있도록 도와주는 도구를 제작하는 것을 말합니다.

다시 말해, 믹스인은 코드 반복을 제거하고 컴포넌트가 필요한 부분에만 집중할 수 있게 도와주는 역할을 합니다.

믹스인을 이용하면 강력한 추상화를 구현할 수 있으며 복잡한 문제를 우아하게 해결할 수 있습니다.

믹스인을 반드시 여러 개의 컴포넌트에서 사용할 목적으로 작성할 필요는 없습니다.

믹스인을 사용하면 어떤 동작이나 역할을 쉽게 설명하고, 컴포넌트에 적용할 수 있습니다.

또한, 컴포넌트의 코드를 줄일 수 있습니다. 이 덕분에 코드의 가독성도 높아질 수 있습니다.



코딩 컨벤션

마크업 개발은 프런트-엔드 페이지의 기본 골격을 형성하기 때문에 디자인, 브라우저, 스크립트, 성능, 접근성 등과 긴밀한 관계가 있다.

즉, 마크업 개발을 잘 해야 모든 브라우저에서 콘텐츠를 손실 없이, 빠르고 쉽게 사용자에게 전달할 수 있다. 코딩 컨벤션은 이러한 조건을 만족시키기 위해 마크업 개발자가 지켜야 할 표준을 제시한다.

또한, 유지보수에 투자되는 비용을 최소화하기 위해 통일된 코드 작성법을 제시한다. 코드를 최초로 작성한 사람이 끝까지 유지보수할 확률은 매우 낮다.

따라서, 최초 개발자가 아닌 사람도 코드를 빠르고 정확하게 이해할 수 있도록 작성하는 것은 코드의 유지보수 비용을 절감하고 업무 효율을 높이는 데 결정적인 역할을 한다.

적어도 한 프로젝트의 마크업 코드는 같은 코딩 컨벤션에 따라 작성해야 한다.

코딩 컨벤션을 준수하면 프로젝트 멤버 간 코드 공유도 쉬워지고, 일관성 있게 코드를 작성할 수 있다. 어떤 코딩 컨벤션을 선택하느냐가 중요한 것이 아니라, 통일된 기준으로 소스 코드를 작성하는 것이 중요하다.



프로그래밍의 템플릿(template)

프로그래밍에서의 템플릿은, 특정단위코드의 기본으로 사용될 수 있는 일반적인 클래스나 단위 원시코드를 말한다.

객체지향 프로그래밍 언어인 C++에는, 표준화된 템플릿 라이브러리가 있어서 프로그래머는 수정하고자하는 개개의 템플릿 클래스를 그저 선택하면 된다.

MFC 라이브러리가 그 대표적인 예이다.



쿼리(query)

쿼리란 데이터베이스에 정보를 요청하는 것입니다.

쿼리는 웹 서버에 특정한 정보를 보여달라는 웹 클라이언트 요청(주로 문자열을 기반으로 한 요청이다)에 의한 처리입니다.

쿼리는 대개 데이터베이스로부터 특정한 주제어나 어귀를 찾기 위해 사용됩니다. 주제어가 검색엔진의 검색 필드 내에 입력된 다음, 그 내용이 웹 서버로 넘겨지게 됩니다.



ERP(Enterprise Resource Planning)

ERP 는 전사적 자원 관리라고 불리며, 말 그대로 기업 활동을 위해 쓰여지고 있는 기업 내의 모든 인적, 물적자원을 효율적으로 관리하여 긍극적으로 기업의 경쟁력을 강화시켜 주는 역할을 하게 되는 통합정보시스템이라고 할 수 있습니다.

기업은 경영 활동의 수행을 위해 여러 시스템, 즉 생산, 판매, 인사, 회계, 자금, 원가, 고정 자산등의 운영 시스템을 갖고 있는데 ERP는 이처럼 전 부문에 걸쳐 있는 경영 자원을 하나의 체계로 통합적 시스템을 재 구축함으로써 생산성을 극대화하려는 대표적인 기업 리엔지니어링 기법입니다.

과거의 경영 지원을 위한 각 Sub System 들은 해당 분야의 업무를 처리하고 정보를 가공하여 의사결정을 지원하기도 하지만 별개의 System 으로 운영되어 정보가 타 부문에 동시에 연결되지 않아 불편과 낭비를 초래하게 됩니다.

이러한 문제점을 해결하기 위해 ERP 는 어느 한 부문에서 Data 를 입력하면 회사의 전 부문에 동시에, 필요에 따라서 정보로 활용할 수 있게 하자는 것입니다.

ERP 를 실현하기 위해서 공급되고 있는 S/W 를 ERP Package 라고 하는데 이 Package 는 데이터를 어느 한 시스템에서 입력을 하면 전체적으로 자동 연결되어, 별도로 Interface 처리하여야 할 필요가 없는 통합 운영이 가능한 시스템입니다.





Jaehee's WebClub


'Dev Environment > 개발 기타 자료' 카테고리의 다른 글

jQuery, bootstrap cdn 의 속성 : integrity, crossorigin  (1) 2016.10.20
메타(meta)태그 정리  (10) 2016.09.30
알아두면 유용한 IT 용어 및 용어 설명  (5) 2016.09.14
IT 단어 정리  (0) 2016.08.15
명세서 읽는 방법  (0) 2016.08.09
웹소켓이란?  (3) 2016.07.19

댓글을 달아 주세요

  1. 행인 2017.06.22 13:32

    지나가다가 오타발견해서 플랫폼(flatform -> platform) 이 맞는 것 같습니다.

  2. someone 2019.11.28 12:08

    ++안티패턴

  3. lck 2020.10.08 17:55

    감사합니다