Programming Language   프로그래밍 언어

(2019-01-10)

프로그래밍 언어 종류, 스크립트 언어, 함수형 프로그래밍

Top > [기술공통]
[기초과학]
[진동/파동]
[방송/멀티미디어/정보이론]
[전기전자공학]
[통신/네트워킹]
[정보기술(IT)]
[공업일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
프로그래밍 >   1. 프로그램,프로그래밍
[프로그래밍 언어론]
[구조적 프로그래밍]
[객체지향 프로그래밍]
[자료표현코드]
[자료구조]
[알고리즘]
[시스템 소프트웨어]
[프로그래밍언어 종류]
[프로그래밍 기타일반]
프로그래밍언어 종류   1. 프로그래밍 언어
[C]
[자바(Java)]
[자바스크립트]
[PHP]
[파이썬]
[(기타 언어)]

Top > [기술공통]
[기초과학]
[진동/파동]
[방송/멀티미디어/정보이론]
[전기전자공학]
[통신/네트워킹]
[정보기술(IT)]
[공업일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
프로그래밍 >   1. 프로그램,프로그래밍
[프로그래밍 언어론]
[구조적 프로그래밍]
[객체지향 프로그래밍]
[자료표현코드]
[자료구조]
[알고리즘]
[시스템 소프트웨어]
[프로그래밍언어 종류]
[프로그래밍 기타일반]
프로그래밍 언어론   1. 프로그래밍 언어
[구문]
[변수]
[자료형/데이터형]
[부프로그램/함수/프로시저]
[예외,이벤트 처리]

1. 언어(Language) 이란?

  ㅇ 사상,생각,감정을 나타내고 의사 소통을 위한 기호 체계

     - 자연 언어 (Natural Language)    : 한국어,영어,독어,일본어 등
     - 인공 언어 (Artificial Language) : 에스패란토오어, 프로그래밍 언어 등
     - 형식 언어 (Formal Language)    : 언어문법 구조를 수학적 측면에서 형식화한 인공 언어
 

2. 프로그래밍 언어 (Programming Language)프로그램 작성용 언어
     - 프로그램을 작성하기 위한 일종의 표기법(notation)

  ㅇ 프로그래밍 의도를 추상화시켜 컴퓨터에 전달하는 도구


3. 프로그래밍 언어의 분류 : 처리 수준에 따른 분류

  ㅇ 고급 언어(High-level Language)
     - 일상적인 언어 수준에 가까운 고수준 언어
        . 例) C 언어, Java 언어 등

  ㅇ 저급 언어(Low-level Language)
     - 기계어와 1:1 대응되는 언어 (기계 중심적 언어)
        . 例) 어셈블리어(Assembly Language) 등

  ㅇ 기계어 (Machine Language)
     - 기계가 직접 이해할 수 있는 2진수 언어
        . 데이터를 비트 수준으로 보이고, 기계 명령을 직접 표현함


4. 프로그래밍 언어의 분류 : 처리계에 의한 분류인터프리터 언어 또는 스크립트 언어
     - 인터프리터에 의해 프로그램 소스를 한 줄 씩 해석해가며 실행하는 부류
     - 例) PHP, Perl, Python, Javascript, VBScript 등

  ㅇ 컴파일러 언어
     - 컴파일러에 의해 프로그램 소스를 실행 환경에 맞춰 해석,변환한 후 실행하는 부류
     - 例) C 언어, Java
5. 프로그래밍 언어의 분류 : 형태(패러다임)적 분류 명령형 프로그래밍 언어 (Imperative Language) 
     - 순차적 명령 수행을 기본으로 함
        . 절차식 프로그래밍 언어 또는 프로시저 지향 프로그래밍 언어 라고도 함
     - 폰노이만 구조에 기반하여 변수(기억장소),배정문,반복문을 그 특징으로 함
     - 例) FORTRAN, Pascal, C 언어 등

  ㅇ 객체지향 프로그래밍 언어 (OOP Language)
     - 명령형 프로그래밍 언어의 확장으로,
     - 프로그램이 절차(프로시저) 및 데이터를 함께 묶은 객체들의 집합으로 구성
        . 한편, 프로시저지향프로그래밍언어/절차식프로그래밍언어는,
        . 함수(또는 프로시저)가 중심이되고, 데이터는 보조 기능을 함
     - 例) Java, Ruby, C++ 언어 등

  ㅇ 함수형 프로그래밍 언어 (Functional Language)
     - 함수들의 집합/조합으로써 프로그램을 구성
     - 특징
        . 재귀(Recursion)가 기본이고, 괄호로 프로그램 내포구조를 나타냄
        . 실행시 함수 동작의 생성이 가능함
        . 함수의 인자(파라미터) 또는 반환에 의해 함수를 전달할 수 있음 (일급 함수)
        . 임시 변수에 의한 반복문 처리 보다는 재귀호출에 의한 구현 선호
     - 선언적/적응적 프로그래밍(Applicative Programming) 이라고도 함
     - 例) LISP, Scheme, Haskell 등

  ㅇ 논리형 프로그래밍 언어 (Logical Language)
     - 기호 논리학에 기반을 둔 언어
     - 데이터 간의 관계와 논리를 설명해 나가는 언어


6. [참고용어]

  ※ ☞ 구문(Syntax), 어휘 구조(Lexical Structure), 의미(Semantic) 등 참조
     - 구문/구조/형식(통사론) : 언어가 구성되는 방법/구조 (언어의 구조)
     - 어휘(형태론)           : 구문에 기반을 두고있는 구성요소들 (토큰의 구조)
     - 의미(내용)             : 표현식,문장,프로그램 단위 등이 주는 의미(Meaning)


[프로그래밍언어 종류] 1. 프로그래밍 언어
[C] [자바(Java)] [자바스크립트] [PHP] [파이썬] [(기타 언어)]

 
        최근수정     요약목록     참고문헌