목차
1.4GL과 5GL의 정의
2.프로그래밍 언어의 역사
3.4GL 특징
(1)4세대 언어의 탄생 배경
(2)4세대 언어의 주요내용
(3)제 4세대 언어의 특징
(4)4GL의 영역과 종류
4.언어 특성의 상대적 비교
5.국내 제품 REVIEW
6.글을 마치며
2.프로그래밍 언어의 역사
3.4GL 특징
(1)4세대 언어의 탄생 배경
(2)4세대 언어의 주요내용
(3)제 4세대 언어의 특징
(4)4GL의 영역과 종류
4.언어 특성의 상대적 비교
5.국내 제품 REVIEW
6.글을 마치며
본문내용
[본문 요약]
시스템 개발과 운영에 있어서 사용자의 요구사항과 시스템의 복잡도가 높아져 가고 있다. 이에 개발과 운용에 있어 보다 생산성 높은 개발 언어(툴)을 요구됨에 따라 프로그래밍 언어 또한 발달되어왔다. 본 기술동향서에서는4,5세대 프로그래밍 언어의 개념과 기술동향을 알아 보고 1세대에서 5세대까지의 프로그래밍 언어의 변천과 4,5세대 언어의 특징을 중점적으로 살펴본다.
프로그래밍 언어의 평가방법을 제시하여 앞으로 있을 프로젝트에 사용될 프로그래밍 언어의 선택에 유용하게 사용될 수 있으리라 본다.
또한 국내 5GL 언어의 성공사례를 살펴보고 국내 기술의 가능성 또한 가늠할 수 있도록 한다.
1 4GL과 5GL의 정의
(참조:텀즈,학술정의,4GL,5GL)
4GL를 문제해결형 언어(Problem Solving Language) 또는 비절차적 언어(Nonprocedural Language)라고 한다. 4세대 언어(Fourth Generation Language)란 종래의 범용 3세대 언어에 비해 한 단위 배 정도의 프로그램 생산성을 향상시킬 수 있는 시스템을 총칭한다. 4GL는 기존 3세대언어의 프로그램 카운터의 접근 방법을 변경시켜 프로그램의 흐름제어에 관한 주된 일을 컴퓨터 전문가에게서 컴퓨터 소프트웨어에게 넘겨주었다. 즉, 연산 결과를 얻기위한 행동(action)을 지정하는 것이 아니라 결과(result)를 컴퓨터에 지정하는 것이다.
5GL은 일반적으로 지식기반 4GL이라고 한다.[ANSI/IEEE 90] 5GL은 4GL에 비해 좀더 복잡한 개발 환경을 가지고 있으며 모든 코드는 자동으로 생성된다. 따라서 시스템 운영은 생성된 코드를 변경관리하는 것이 아니라 코드생성에 사용된 5GL 문장을 관리하는 것이다. [Connors 94]
학술적 분야에서 제5세대 언어(5GL)라 칭하는 프로그래밍 언어로는 함수언어, 논리언어, 그리고 자연어를 들 수 있다. 이들 언어는 종종 인공지능의 구현이나 전문가 시스템을 만드는데 사용된다. 컴퓨터가 인간 두뇌의 기능을 모방할 수 있게 해주는 응용 기술이 인공지능이다. 현재 5세대 언어의 사용이나 발전은 유아기 단계에 있어서, 상업용으로 사용될 수 있는 것은 거의 없다. 하지만 가까운 미래에 5세대 언어를 사용하여 개발한 전문가 시스템이 날씨를 예보하고, 병을 진단하고, 석유를 탐사할 장소를 결정하는 것을 도와줄 수 있을 것이다.
2.프로그래밍 언어의 역사
컴퓨터 산업계에서 이 용어들은 프로그래밍 언어 발전과정의 주요 단계나 세대를 나타내는 말로 널리 사용된다. 1GL 또는 1세대 언어는 기계어 즉, 프로세서가 실제로 작업을 수행하기 위해 주어지는 수준의 명령어나 데이터를 말한다. 2GL 또는 2세대 언어는 어셈블리 언어라고 하는데, 전형적인 2GL의 실제적인 예를 한가지 들어보면 다음과 같다.
어셈블러가 이러한 어셈블리 언어를 기계어로 바꾸어준다. 3GL 또는 3세대 언어는 PL/1, C, Java 등과 같은 고급 프로그래밍 언어를 말하는데, Java 언어의 프로그램 문장은 아래와 같은 형태를 띤다.
컴파일러가 특정한 고급 프로그래밍 언어의 문장을 기계어로 바꾸어준다(자바의 경우에는 바이트 코드라고 불리는 결과물을 내는데, 이것은 해당 플랫폼의 운영체계의 일부인 자바 가상머신에 의해 적절한 기계어로 바뀔 수 있는 형태이다). 3세대 언어로 프로그램을 작성하려면 적지 않은 양의 프로그래밍 지식을 필요로 한다.
4GL 또는 4세대 언어는 3GL 언어보다는 자연어에 좀더 가깝게 설계되어있다. 데이터베이스 접근을 위한 언어들을 종종 4GL이라고 표현하기도 하는데, 4GL 언어의 프로그램 문장은 다음과 같은 형태를 가진다.
5GL 또는 5세대 언어는 시각적인 그래픽 인터페이스를 통해, 통상 3GL 또는 4GL 언어 컴파일러로 컴파일 할 수 있는 원시코드를 만들어 준다. 마이크로소프트, 볼랜드, IBM 등의 회사가 자바 같은 언어를 쓴 응용프로그램을 개발하기 위한 5세대 프로그래밍 도구를 만들고 있다.
시스템 개발과 운영에 있어서 사용자의 요구사항과 시스템의 복잡도가 높아져 가고 있다. 이에 개발과 운용에 있어 보다 생산성 높은 개발 언어(툴)을 요구됨에 따라 프로그래밍 언어 또한 발달되어왔다. 본 기술동향서에서는4,5세대 프로그래밍 언어의 개념과 기술동향을 알아 보고 1세대에서 5세대까지의 프로그래밍 언어의 변천과 4,5세대 언어의 특징을 중점적으로 살펴본다.
프로그래밍 언어의 평가방법을 제시하여 앞으로 있을 프로젝트에 사용될 프로그래밍 언어의 선택에 유용하게 사용될 수 있으리라 본다.
또한 국내 5GL 언어의 성공사례를 살펴보고 국내 기술의 가능성 또한 가늠할 수 있도록 한다.
1 4GL과 5GL의 정의
(참조:텀즈,학술정의,4GL,5GL)
4GL를 문제해결형 언어(Problem Solving Language) 또는 비절차적 언어(Nonprocedural Language)라고 한다. 4세대 언어(Fourth Generation Language)란 종래의 범용 3세대 언어에 비해 한 단위 배 정도의 프로그램 생산성을 향상시킬 수 있는 시스템을 총칭한다. 4GL는 기존 3세대언어의 프로그램 카운터의 접근 방법을 변경시켜 프로그램의 흐름제어에 관한 주된 일을 컴퓨터 전문가에게서 컴퓨터 소프트웨어에게 넘겨주었다. 즉, 연산 결과를 얻기위한 행동(action)을 지정하는 것이 아니라 결과(result)를 컴퓨터에 지정하는 것이다.
5GL은 일반적으로 지식기반 4GL이라고 한다.[ANSI/IEEE 90] 5GL은 4GL에 비해 좀더 복잡한 개발 환경을 가지고 있으며 모든 코드는 자동으로 생성된다. 따라서 시스템 운영은 생성된 코드를 변경관리하는 것이 아니라 코드생성에 사용된 5GL 문장을 관리하는 것이다. [Connors 94]
학술적 분야에서 제5세대 언어(5GL)라 칭하는 프로그래밍 언어로는 함수언어, 논리언어, 그리고 자연어를 들 수 있다. 이들 언어는 종종 인공지능의 구현이나 전문가 시스템을 만드는데 사용된다. 컴퓨터가 인간 두뇌의 기능을 모방할 수 있게 해주는 응용 기술이 인공지능이다. 현재 5세대 언어의 사용이나 발전은 유아기 단계에 있어서, 상업용으로 사용될 수 있는 것은 거의 없다. 하지만 가까운 미래에 5세대 언어를 사용하여 개발한 전문가 시스템이 날씨를 예보하고, 병을 진단하고, 석유를 탐사할 장소를 결정하는 것을 도와줄 수 있을 것이다.
2.프로그래밍 언어의 역사
컴퓨터 산업계에서 이 용어들은 프로그래밍 언어 발전과정의 주요 단계나 세대를 나타내는 말로 널리 사용된다. 1GL 또는 1세대 언어는 기계어 즉, 프로세서가 실제로 작업을 수행하기 위해 주어지는 수준의 명령어나 데이터를 말한다. 2GL 또는 2세대 언어는 어셈블리 언어라고 하는데, 전형적인 2GL의 실제적인 예를 한가지 들어보면 다음과 같다.
어셈블러가 이러한 어셈블리 언어를 기계어로 바꾸어준다. 3GL 또는 3세대 언어는 PL/1, C, Java 등과 같은 고급 프로그래밍 언어를 말하는데, Java 언어의 프로그램 문장은 아래와 같은 형태를 띤다.
컴파일러가 특정한 고급 프로그래밍 언어의 문장을 기계어로 바꾸어준다(자바의 경우에는 바이트 코드라고 불리는 결과물을 내는데, 이것은 해당 플랫폼의 운영체계의 일부인 자바 가상머신에 의해 적절한 기계어로 바뀔 수 있는 형태이다). 3세대 언어로 프로그램을 작성하려면 적지 않은 양의 프로그래밍 지식을 필요로 한다.
4GL 또는 4세대 언어는 3GL 언어보다는 자연어에 좀더 가깝게 설계되어있다. 데이터베이스 접근을 위한 언어들을 종종 4GL이라고 표현하기도 하는데, 4GL 언어의 프로그램 문장은 다음과 같은 형태를 가진다.
5GL 또는 5세대 언어는 시각적인 그래픽 인터페이스를 통해, 통상 3GL 또는 4GL 언어 컴파일러로 컴파일 할 수 있는 원시코드를 만들어 준다. 마이크로소프트, 볼랜드, IBM 등의 회사가 자바 같은 언어를 쓴 응용프로그램을 개발하기 위한 5세대 프로그래밍 도구를 만들고 있다.
추천자료
[실어증][신경언어장애][K-BNT][실어증 치료][언어치료][언어장애]실어증의 역사, 실어증의 ...
[청각장애][청각장애아동언어발달][청각장애아동언어지도]청각장애의 개념, 청각장애의 원인,...
[북한][북한의 언어정책][북한의 이질화된언어][북한의 호칭어][북한의 외래어][북한의 은어]...
[클리퍼][프로그래밍언어][프로그램언어][프로그래밍]프로그래밍언어(프로그램언어)의 발전 ...
북한말(북한어, 북한언어, 문화어)의 장단점, 북한말(북한어, 북한언어, 문화어) 맞춤법, 북...
[보디랭기지]몸짓언어(바디랭기지, 보디랭귀지)의 의의, 몸짓언어(바디랭기지, 보디랭귀지)의...
북한어(북한말, 북한언어, 문화어) 의의, 북한어(북한말, 북한언어, 문화어) 발달, 북한어(북...
수학능력시험(수능시험) 언어영역의 교육방송, 수학능력시험(수능시험) 언어영역의 인문분야...
소프트웨어 개발도구(프로그래밍 언어)-프로그래밍의 개념과 프로그래밍언어의 종류, 저급언...
[영유아기 언어발달] 영유아기 언어발달 과정, 영유아 언어교육 지침, 영유아 언어 영역, 연...
[영유아기 언어발달] 영유아기 언어발달 과정, 영유아 언어교육 지침, 영유아 언어 영역, 연...
[방송통신대] 언어의 이해(A형) 인간언어의 본질을 간략하게 설명하시오 (언어의 탄생, 언어...
[국문학개론]- 언어 규범 정책의 방향 (국어 생활의과제, 언어 정책사에 나타난 언어 규범의 ...
[한국어교육] 일상 언어에 나타난 불교 문화, 후대에 변화한 불교 관련 언어, 일상 언어에 나...