20
프프프프프 프프프 프프 프프프

프로그래밍 언어와 역사

  • Upload
    felix

  • View
    170

  • Download
    10

Embed Size (px)

DESCRIPTION

프로그래밍 언어와 역사. 서상우. 목차. 1950 년 ( 어셈블리 ) 1950 년대 ( 포트란 , 알골 , 코볼 ) 1970 년대 ( C , 파스칼 ) 1980 년대 ( C++ ) 1990 년대 ( Java , C# ). 1950 년 ( 어셈블리 언어 ). 1950 년대 컴퓨터가 상업화 되면서 , 복잡한 기계어 대신 어셈블리 언어 (assembly language) 라고 하는 대체 언어를 사용 하게 되었다. 특징. - PowerPoint PPT Presentation

Citation preview

Page 1: 프로그래밍 언어와 역사

프로그래밍 언어와 역사

서상우

Page 2: 프로그래밍 언어와 역사

목차

1950 년 ( 어셈블리 ) 1950 년대 ( 포트란 , 알골 , 코볼 ) 1970 년대 ( C, 파스칼 ) 1980 년대 ( C++ ) 1990 년대 ( Java, C# )

Page 3: 프로그래밍 언어와 역사

1950 년 ( 어셈블리 언어 )

1950 년대 컴퓨터가 상업화 되면서 , 복잡한 기계어 대신 어셈블리 언어 (assembly language) 라고 하는 대체 언어를 사용하게 되었다 .

Page 4: 프로그래밍 언어와 역사

특징

어셈블리 언어는 어려운 기계어의 코드를 move, jump, branch 등과 같은 쉬운 명령어로 나타낸 것이다 .

기계어와 어셈블리 언어는 기계 의존적이며 자연 언어와는 차이가 나는 구문을 사용했기 때문에 저급언어(low level language) 라 불린다 .

Page 5: 프로그래밍 언어와 역사

1950 년대 ( 포트란 , 알골 , 코볼 )

FORTRAN I(1957)

최초의 대중 컴퓨터 언어 . FORTRAN 은 수식 (Formular) 변환기 (Translator) 의

약자

Page 6: 프로그래밍 언어와 역사

특징

구성요소는 단순 , 프로그래머는 간단하게 프로그래밍할 수 있게 되었다 . 오늘날 언어에서 사용되고 있는 데이터 형식들도 FORTRAN 에서 시작되었다 .

FORTRAN 의 어셈블리 언어 개발자들은 최초로 성공적인 고급 언어를 만들었으며 매우 효율적인 코드를 생산해 내는 최적화 컴파일러도 만들었다 .

호환성이 좋다는점에서 FORTRAN 은 어셈블리언어를 누르고 , 과학 및 방위 산업 연관 단체에 채용되는 등 우주 항공 프로그램과 방위산업 프로젝트들에서 광범위하게 사용 되었다 .

Page 7: 프로그래밍 언어와 역사

ALGOL58 (1958)

알골 (ALGOL) 은 미국에서 만들어진 포트란에 대항하여 유럽을 중심으로 개발된 프로그래밍 언어이다 .

ALGOrithmic Language 를 줄여 붙여진 이름으로 알고리즘의 연구개발에 이용하기 위한 목적으로 만들어졌다 .

1958 년 취리히에서 열린 국제회의에서 제안된 것이 그 기원으로 여겨진다 . ( 이 언어는 후에 ALGOL 58 로 불리게 되지만 , 당초의 이름은 IAL 이었다 .)

파스칼 , C 언어 등 이후 언어의 발전에 큰 영향을 주었다 .

Page 8: 프로그래밍 언어와 역사

COBOL (1959)

COBOL 은 Common Business Oriented Lan-guage 상업 지향적 보통 언어의 약자이며 , 영업 및 업무 중심의 언어이다 .

Page 9: 프로그래밍 언어와 역사

특징 1950 년대 사무처리 언어가 개발업체마다 달라서 문제가

있었다 . 이러한 것을 인식한 미국 국방부에서 사무처리 언어의 통일을 위해 사무처리에 대한 언어발달 모형이 제시되고 CODASYL ( 데이터 시스템즈 언어 협의회 ) 가 설립되었다 .

이러한 배경하에 1959 년에 개발된 일반 사무처리 언어가 코볼이다 .

코볼보다 먼저 개발된 포트란 (FORTRAN) 은 주로 과학기술계산용인 반면 비슷한 시기에 탄생된 코볼은 대량 데이터 처리를 위한 업무처리 및 관리 분야용으로 자리잡게 된다 .

Page 10: 프로그래밍 언어와 역사

특징

코볼은 제 3 세대 프로그래밍 언어이고 , 가장 오래되었으면서 지금도 쓰이는 언어의 하나이다 . 90년대 중반까지 한국의 대부분의 은행에서 관리하던 프로그램들은 코볼로 만들어졌다 .

장점은 호환성이 많고 FILE 관리가 쉽고 , 영어형식으로 이해하기 쉽고 , 프로그램 편집이 쉽다 .

Page 11: 프로그래밍 언어와 역사

1970 년대 (C, 파스칼 )

C(1971)

C 언어는 1972 년 켄 톰슨과 데니스 리치가 벨 연구소에서 일할 당시 유닉스 운영 체제에서 사용하기 위해 개발한 프로그래밍 언어이다 .

Page 12: 프로그래밍 언어와 역사

특징

켄 톰슨은 BCPL 언어를 필요에 맞추어 개조해서 "B" 언어 라 명명했고 , 데니스 리치가 이것을 개선하여 C 언어가 탄생했다 .

원래 유닉스는 어셈블리로는 이식성이 낮았다 . 그래서 이식성도 좋고 익히기도 쉬운 언어인 C 언어로 다시 프로그래밍 하게 된다 .

C++ 은 C 에서 객체 지향형 언어로 발전된 것이다 . 또 다른 다양한 최신 언어들도 그 뿌리를 C 에 두고 있다 .

Page 13: 프로그래밍 언어와 역사

파스칼 (1969)

파스칼은 1969 년에 스위스 ETH 취리히의 컴퓨터 과학자 니클라우스 비르트가 개발하였다 .

파스칼이라는 이름은 프랑스의 수학자이자 철학자 블레즈 파스칼의 이름을 딴 것이다 .

Page 14: 프로그래밍 언어와 역사

특징

포인터를 사용한 구조적 프로그래밍을 그 특징으로 한다 .

알골 60 의 영향을 받았기 때문에 , 같은 시기에 제작된 C와 여러가지 면에서 유사한 점을 갖는다 .

코드를 간결하게 하고 버그를 더 쉽게 잡아내기 위한 목적으로 몇가지 기능을 제한함으로써 결과적으로 C 언어에 비해 활용도가 떨어지는 언어가 되었다 .

현재는 초기의 파스칼에 비해 많은 부분이 추가 , 개선되고 상용 파스칼 컴파일러인 델파이는 C++ 과 거의 기능 차이가 없다 .

Page 15: 프로그래밍 언어와 역사

1980 년대 (C++)

C++(1983)

C++ 은 AT&T 벨 연구소의 비야네 스트롭스트룹이 1983년 발표하여 발전한 프로그래밍 언어이다 . C 언어의 문법을 대부분 사용할 수 있으며 , 객체지향성이 더해진 C 언어의 확장형이라고 생각할 수도 있다 .

원래 이름은 C with Classes 였으나 , 증가 연산자를 도입하면서 1984 년에 C++ 로 이름이 변경되었다 .

Page 16: 프로그래밍 언어와 역사

특징

초기의 C++ 은 C 위에 놓인 트랜스레이터로 구현되었다 . 즉 , C++ 프로그램을 일단 C 프로그램으로 변환하고 나서 C 컴파일러로 컴파일하는 식이었고 따라서 C 언어에 대해 상위 호환성을 갖는 언어였다 .

현재 C 언어와 C++ 와의 사이에는 엄격한 호환성은 없다 . 특히 C99 의 출현으로 C 언어와의 호환성은 완전하게 없어졌다 .

현재는 C 와 C++ 가 명확한 구별 없이 혼재되어 사용되는 컴파일러가 대부분이다 .

Page 17: 프로그래밍 언어와 역사

1990 년대 ( JAVA, C# )

Java(1995)

Java 는 썬 마이크로시스템즈의 제임스 고슬링 과 다른 연구원들이 개발한 객체 지향적 프로그래밍 언어이다 .

고슬링의 목표는 C/C++ 스타일의 언어와 가상 머신을 구현하는 것이었다 .

Page 18: 프로그래밍 언어와 역사

특징

1991 년 그린 프로젝트라는 이름으로 시작해 1995 년에 발표했다 .

자바 언어는 1991 년 6월 셋톱 프로젝트를 위해 만들었다 . 원래 사무실 밖에 있던 오크 나무를 따다 오크 , 혹은 그린 이라고도 불렀으나 , 단어 리스트 중 무작위로 뽑은 자바 (Java) 를 선택했다 .

자바의 개발자들은 유닉스 기반의 배경을 가지고 있었기 때문에 문법적인 특성은 파스칼이 아닌 C 언어와 비슷하다 .

처음에는 가전제품 내에 탑재해 동작하는 프로그램을 위해 개발했지만 현재 웹 애플리케이션 개발에 가장 많이 사용하는 언어 가운데 하나이고 , 모바일 기기용 소프트웨어 개발에도 널리 사용하고 있다 .

Page 19: 프로그래밍 언어와 역사

C# (2001)

C# 은 마이크로소프트에서 개발한 객체 지향 프로그래밍 언어로 , 닷넷 프레임워크의 한 부분으로 만들었으며 나중에 ECMA 와 ISO 의 표준으로 자리잡았다 .

닷넷 프레임워크는 마이크로소프트에서 개발한 윈도 프로그램 개발 및 실행 환경이다

Page 20: 프로그래밍 언어와 역사

특징 2000 년에 마이크로소프트 , 휴렛 팩커드 , 인텔은

C# 과 공통 언어 기반 (CLI) 를 ECMA 국제 표준으로 등록하기 위한 작업을 준비하였다 .

2001 년 12월에 ECMA 는 C# 언어를 ECMA-334 표준으로 발표하였고 2003 년에는 ISO/IEC 23270 표준으로도 등록되었다 .

C# 은 그 문법적인 특성이 자바와 상당히 유사하며 C#을 통하여 다룰 수 있는 닷넷 플랫폼의 기술들조차도 자바를 염두에 둔 것이 많아서 자바와 많이 비교되고 있다 .