1. 컴퓨터의 구조
- 폰 노이만 구조 : 현재 대부분의 컴퓨터의 구조로 CPU와 Memory로 이뤄진 것
- 폰 노이만이 컴퓨터를 생각했던 과정과 생성물
ⓐ 수학적 반복계산을 담당할 무언가(CPU)와 중간에 값을 저장할 공간(Memory)가 필요...
ⓑ 메모리의 주소를 알아야 하는가??
> 변수의 탄생
ⓒ 메모리의 내용을 변환할 수 있는가??
> 어사인먼트(assignment)의 탄생
ⓓ 반복적인 연산이 가능한가??
> 레퍼티션(Repetition) / 반복연산의 탄생
- 즉, 컴퓨터의 구조가 폰 노이만의 구조를 따른다면 프로그램언어에는
변수, 어사인먼트, 레퍼티션이 존재해야한다!!
- 폰 노이만 구조를 기반으로 설계된 언어를 "명령형 언어(imperative language)"라고한다.
2. 프로그램 설계 경향
- 프로그램은 그 시대의 프로그램 설계 경향을 따르기 마련이다.
- 각 해당 연도별 특성
ⓐ 1950년대 : 하드웨어의 불안함에의해 하드웨어가 잘 돌아가야 한다는 것에 중점을 둔 언어가 많다.
하드웨어(기계)에 입장에서 언어가 설계되었다.
ex) 어샘블리
ⓑ 1960년대 후반 : 하드웨어가 안정화가 되감. 이에 따라 프로그램 설계의 핵심이 사람으로 변경됨.
사람이 생각하는 슈도코드가 실현 가능한 프로그램언어 개발
ex) 알골68
ⓒ 1970년대 후반 : 사람위주로 생각하다보니 데이터의 양이 방대해짐.
이에 따라 프로그램 설계의 핵심이 데이터로변경됨.
추상적인 데이터 양식을 제공
ex) C-struct / Java - class
ⓓ 1980년대 : 객체 지향을 지원해주는 언어의 탄생
- 이러한 시대에 따른 프로그램 설계의 경향을 토대로 언어의 탄생 년도로 그 언어의 특성이 유추가 가능함
- 폰 노이만 구조 : 현재 대부분의 컴퓨터의 구조로 CPU와 Memory로 이뤄진 것
- 폰 노이만이 컴퓨터를 생각했던 과정과 생성물
ⓐ 수학적 반복계산을 담당할 무언가(CPU)와 중간에 값을 저장할 공간(Memory)가 필요...
ⓑ 메모리의 주소를 알아야 하는가??
> 변수의 탄생
ⓒ 메모리의 내용을 변환할 수 있는가??
> 어사인먼트(assignment)의 탄생
ⓓ 반복적인 연산이 가능한가??
> 레퍼티션(Repetition) / 반복연산의 탄생
- 즉, 컴퓨터의 구조가 폰 노이만의 구조를 따른다면 프로그램언어에는
변수, 어사인먼트, 레퍼티션이 존재해야한다!!
- 폰 노이만 구조를 기반으로 설계된 언어를 "명령형 언어(imperative language)"라고한다.
2. 프로그램 설계 경향
- 프로그램은 그 시대의 프로그램 설계 경향을 따르기 마련이다.
- 각 해당 연도별 특성
ⓐ 1950년대 : 하드웨어의 불안함에의해 하드웨어가 잘 돌아가야 한다는 것에 중점을 둔 언어가 많다.
하드웨어(기계)에 입장에서 언어가 설계되었다.
ex) 어샘블리
ⓑ 1960년대 후반 : 하드웨어가 안정화가 되감. 이에 따라 프로그램 설계의 핵심이 사람으로 변경됨.
사람이 생각하는 슈도코드가 실현 가능한 프로그램언어 개발
ex) 알골68
ⓒ 1970년대 후반 : 사람위주로 생각하다보니 데이터의 양이 방대해짐.
이에 따라 프로그램 설계의 핵심이 데이터로변경됨.
추상적인 데이터 양식을 제공
ex) C-struct / Java - class
ⓓ 1980년대 : 객체 지향을 지원해주는 언어의 탄생
- 이러한 시대에 따른 프로그램 설계의 경향을 토대로 언어의 탄생 년도로 그 언어의 특성이 유추가 가능함