5장 : 프로그래밍 언어 활용(4과목)
1. 프로그래밍 언어의 분류
- 절차적 프로그래밍 언어
- 객체지향 프로그래밍 언어
- 스크립트 언어
- 선언형 언어
2. 절차적 프로그래밍 언어
- 일련의 처리 절차를 정해진 문법에 따라 순서대로 기술해 나가는 언어
- 자연어에 가까운 단어와 문장으로 구성
- 실행 속도가 빠름
- 같은 코드를 다른 곳에서 호출하여 사용 가능
- 모듈 구성이 용이
- 때문에, 구조적 프로그래밍이 가능
- 프로그램의 분석 및 수정이 어려움
- 종류 : C, ALGOL, COBOL, FOTRTRAN
3. 객체지향 프로그래밍 언어
- 객체들을 조립해서 프로그램을 작성할 수 있도록 한 프로그래밍 기법.
- 재사용과 확장이 용이하다.
- 재활용성이 높다.
- 분석과 설계를 쉽고, 효율적으로 처리 할 수 있다.
- 사용자와 개발자 간의 이해가 쉽다.
- 대형 프로그램에 유리하다.
- 구조적 코딩 방식의 문제점을 해결하기 위해 등장하였다.
- 처리 시간이 지연된다.
- 종류 : JAVA, C++, SMALLTALK
4. 객체지향 프로그래밍 언어의 구성 요소
이름 | 설명 |
객체 (Object) | 데이터 구조와 이를 처리하기 위한 연산을 결합시킨 실체. |
클래스 (Class) | 필드 + 메소드 같은 특성을 가지는 객체를 표현한 것. |
메시지 (Message) | 객체들 사이에서 정보를 교환하기 위한 수단. |
속성 (Attribute) | 객체들이 갖고 있는 데이터의 값, 파일처리에서 객체는 레코드, 속성은 필드와 유사한 개념. |
메소드 (Method) | 객체의 상태를 참조하건나 변경하기 위한 수단 |
5. 객체지향 프로그래밍 언어의 특징
- 캡슐화
- 정보 은닉
- 추상화
- 상속성
- 다형성
6. 스크립트 언어
- HTML 문서 안에 직접 프로그래밍 언어를 삽입하여 사용하는 것.
- 컴파일 되지 않는다.
- 별도의 번역기가 소스를 분석하여 동작하게 한다.
- 결과를 바로 확인할 수 있다.
- 코딩 난이도가 낮다.
- 개발 시간이 짧다.
- 빠르게 수정할 수 있다.
- 실행 속도가 느리다.
- 런타임 오류가 많이 발생한다.
- 종류 : JAVA Script, ASP, JSP, PHP, 파이썬
7. 명령형 언어
- 순차적인 명령 수행을 기본으로 하는 언어.
- 문제를 처리하기 위한 방법에 초점을 둔다.
- 폰노이만 구조에 기초한다.
- 알고리즘을 명시한다.
- 목표는 명시하지 않는다.
- 개체의 동작과 상태를 중요시한다.
- 종류 : FORTRAN, COBOL, C, JAVA
8. 선언형 언어
- 명령형 언어와 반대되는 개념
- 프로그램이 수행해야 문제를 기술하는 언어이다.
- 목표를 명시한다.
- 알고리즘은 명시하지 않는다.
- 가독성, 재사용성이 좋다.
- 오류가 적다.
- 종류 : HTML, LISP, PROLOG, XML, Haskell
9. 선언형 언어의 분류
- 함수형 언어
- 수학적 함수를 조합하여 문제를 해결하는 언어
- 재귀호출이 자주 이용
- 병렬 처리에 유리
- 논리형 언어
- 기호 논리학에 기반을 둔 언어.
- 반복문을 사용하지 않음
- 비절차적 언어