학습(구)/Java(구)

언어와 애플리케이션 분류

잉아당 2021. 3. 15. 20:14
728x90

 

사용 용도에 따른 컴퓨터 언어 분류 

1. 문서 언어 

-  HTML : 마크업 언어로서 문서와 관련이 있으며 태그를 사용해 작성합니다.

- UML : 설계 언어로서 프로그램을 설계 할 때 사용하는 언어입니다.

 

2. 프로그래밍 언어 

- 고급 언어(JAVA, C ..) : 자연어와 유사한 언어입니다.

- 기계어 : 환경에 따라 달라지는 언어입니다.

 

3. 스크립트 언어 

- 클라이언트 : JavaScript가 있으며 동적 문서를 작성하는데 사용합니다.

- 서버 : JSP,ASP 등이 있으며 문서 작성하는데 사용하며 프로그래밍 요소를 가지고 있는 언어 입니다.

 

4. 작업 제어 언어

- OS와 밀접한 언어로 배치 작업 등을 처리하는데 사용합니다.

 

5. DB 언어

- 테이블 제작 및 각종 레코드들을 처리할 때 사용합니다.

 

 UI에 따른 애플리케이션 분류 

콘솔

- UI를 사용하지 않습니다.

- 개인용 프로그램

- 프로그램 드리븐으로 동작 : 프로그램 흐름을 프로그램이 주도합니다.

- 절차 지향적 성격을 가집니다.

 

윈도우

- 창을 UI로 사용합니다. => 창을 통해 입출력을 수행합니다.

- 개인용 프로그램

- 메시지 드리븐으로 동작 : 메시지에 의해 동작이 수행됩니다.

- 객체 지향적 성격을 가집니다.

 

서버

- 클라이언트 - 인터넷/웹 - WAS : 웹 어플리케이션 서버

- 인터넷/웹 을 통해 서버와 클라이언트를 연결 시켜 줍니다.

- 사용자 요청 드리븐으로 동작 : 사용자의 요청에 의해 동작이 수행됩니다.

- 객체 지향적 성격을 가집니다.

- 주로 엔터프라이즈 애플리케이션에서 이러한 방식으로 작성이 되며 다수의 사용자가 클라이언트를 통해 프로그램을 사용할 수 있습니다.

 

구성 단위에 따른 분류

함수형 프로그램 

- 주로 이벤트핸들러, 병렬 처리를 할때 사용이 됩니다.

- 코드와 데이터를 분리한 구조입니다.

- 자바의 경우 람다식을 이용해 구현할 수 있습니다.

 

객체형 프로그램

- 실체를 구현한 객체 단위로 구성이 되있습니다.

- 코드와 데이터를 통합한 구조입니다.

 

설계 개념에 의한 분류 

절차 지향 프로그래밍

- HW(하드웨어)는 순차적으로 실행 되는 구조로써 이를 고려한 제작 방식입니다.

 

객체 지향 프로그래밍

- HW를 고려하지 않고 실세계의 작업 처리 방식을 들고온 제작 방식입니다.

 

수행 환경에 의한 분류

OS 환경 프로그래밍

- 실제 OS위에서 직접 수행이 됩니다.

- OS별로 실행 구조가 달라 각 다르게 작성을 해야 합니다.

 

VM환경 프로그래밍

- VM(Virtual Machine) 환경 안에서 실제 기계와 매핑이 되며 동작됩니다.

- OS가 달라도 VM만 지원을 한다면 동일한 소스를 사용할 수 있습니다.

'학습(구) > Java(구)' 카테고리의 다른 글

참조 타입  (0) 2021.03.17
식별자  (0) 2021.03.16
연산자  (0) 2021.03.16
변수  (0) 2021.03.16
자바 프로그램의 구성 요소  (0) 2021.03.15