웹 프로그래밍 관련 정리

Markup Language

HTML(Hyper Text Markup Language): 관련있는 여러 문서를 특정 키워드로 링크시키는 문서. <>에 둘러싸인 tag들로 구성되어있다.

DHTML(Dynamic HTML): HTML 기능 + CSS + Java Script + VB Script

CSS(Cascading Style Sheet): HTML의 부족한 레이아웃에 관한 지정을 layer등을 이용하여 보다 세밀하게 수행.

XML(Extensible Markup Language): 확장가능한 마크업 언어로 SGML로부터 발전된 언어.
XML 선언부(XML 버젼, 사용문자 코드를 선언하는 부분),
문서형 선언부(DTD:Document Type Definition-메타언어에 따른 독자적인 태그를 정의하는 부분),
문서 본문(DTD에서 정의한 태그를 사용하여 본문을 기술)으로 구성.

SGML(Standard Generalized Markup Language): 웹페이지가 아닌 컴, 애플리케이션 간 문서를 데이터로써 취급.
SGML 선언부, 문서형 선언부, 문서 본문으로 구성.

Client Side Web Programs

Java Script: Netscape사와 Sun사가 공동개발한 인터프리터 언어, HTML 안에 기술, IE(Internet Explorer), NN(Netscape Naviator) 브라우저를 사용.

VB Script(Visual Basic Script): Visual Basic으로 작성하는 인터프리터 언어, WSH(Windows Script Hosting)와의 연계로 윈도우에 포함된 애플리케이션 조작 가능, HTML 안에 기술, IE 브라우저를 사용.

Java Aplet: JDK(Java Developer's Kit)로 작성하는 컴파일 언어. 확장자는 class, HTML에서 class 화일을 불러들여 실행, JVM(Java Virtual Machine)으로 기동. Java Script, VB Script에 비해 컴파일 된 뒤 독자적으로 실행되어 실행속도가 빠르고 보안성이나 안전도가 높은 편.

Server Side Web Programs

CGI(Common Gateway Interface): 웹서버에서 외부 프로그램(서버 사이드 프로그램)을 호출하는 구조.

Perl(Practical Extraction and Report Language) Script: 인터프리터 언어, Perl 인터프리터를 갖춘 CGI 서버에서 동작. 1987년 Larry Wall이 Unix의 텍스트 처리를 수행하기 위한 프로그래밍 언어로 개발.

C language: 컴파일 언어, Unix의 Shell에서 컴파일한 뒤 사용.

Python: 인터프리터 언어, Python 인터프리터를 갖춘 CGI 서버에서 동작. 1991년 Guido Van Rossum이 여러 운영체제에서 움직이는 프로그래밍 언어로 개발. 프로그램 코드가 간결하고 소스가 읽기 편하다.

Java Servlet: 컴파일 언어이지만 중간코드 형태로 업로드, Java Servlet 엔진이 갖춰진 서버에 의해 실행.

PHP(PHP: HyperText Preprocessor): HTML에 직접 삽입이 가능한 인터프리터 언어로 데이터 베이스를 조작할 수 있는 명령어(SQL(Structured Query Language) command)가 삽입되어 있는 것이 특징. PHP 인터프리터를 갖춘 웹서버에서 실행.

ASP(Active Server Pages): '*.asp'형태의 화일에 쓰여진 스크립트 언어를 서버 사이드에서 해석한 뒤 외부 프로그램이나 데이터베이스와 연계하여 실행 결과를 클라이언트 사이드에 되돌려 주는 일련의 처리 환경, 기술로 프로그램 몸체부에는 VB Script 혹은 Java Script가 사용된다. IIS(Internet Information Server: Win NT 서버 프로그램), PWS(Personal Web Server: Win 98, Win NT workstation에서 작동) 등의 웹서버 프로그램을 설치한 컴퓨터를 서버로 사용.

JSP(Java Server Pages): ASP와 비슷, 단 Java 프로그램 코드만 사용가능. HTML 문서중에 직접 삽입하지만 실행시에는 Java Servlet으로 자동변환되어 실행된다.

ETC

VRML(Virtual Reality Modeling Language): 웹상에서 가상의 3차원 공간을 조작하기 위한 언어. 실행하려면 전용뷰어 플러그인이 필요.

ActiveX: Visual C++, Visual Basic 등에서 개발. 윈도우 애플리케이션을 구현하거나 윈도우에서 사용되는 컴포넌트 버튼, 혹은 표 계산 소프트에서 사용되는 그리드 선과 같은 컨트롤을 자신의 VB Script 등 클라이언트 사이드 웹 프로그램 안에 삽입하여 사용하는 등의 기술. 자유도가 높은 탓에 위험한 프로그램을 짤 가능성도 존재한다.

Flash: 동적인 무비나 게임, 인터랙션등이 가능한 swf 화일을 만든다.
CGI 프로그램과의 연계기능도 존재, 실행하려면 전용 플러그인이 필요.

RDBMS(Relational Database Management Software): 많은 수의 데이터를 테이블 형태로 관리하는 프로그램으로 Oracle사의 'Oracle Server', IBM사의 'DB2', Microsoft사의 'SQL Server', 'Access'등이 있다.

SQL(Structured Query Language): 구조화된 질의 언어란 뜻으로 RDB(Relational Database: 관계형 데이터베이스)를 조작하기 위한 언어.

Web Programing 환경은 아직도 춘추 전국시대인양 부침이 계속되고 계속 변화하고 있는데 2007년 현재 브라우저 시장은 Internet Explorer가 거의 독점한 상황이고 Java Applet의 경우 최신 Internet Explorer부터는 실행되지 않는다. VRML의 사용자는 여전히 적고 ActiveX의 경우 악용된 경우가 많아서 사용자들 사이에 안좋은 인식이 많아져 플러그인 설치를 꺼리는 탓에 사용이 줄은 상태이고 반면 action script의 버젼이 2.0에서 3.0으로 버젼업되며 프로그래밍 언어로써의 기능이 차츰 확장되어 온 Flash는 표준 플러그인화 되어 있지만 최신 브라우저에서는 클릭하여 선택을 해야 사용가능한 형태로 변화되었다.

-2007.12.3