검색어 입력폼

좋은프로그래밍을 만들기 위한 방법

저작시기 2010.04 |등록일 2010.04.24 한글파일한글 (hwp) | 18페이지 | 가격 2,000원

소개글

좋은프로그래밍을 만들기 위한 방법

목차

● 좋은 프로그래밍 언어를 설계하는 원칙
● 고급 언어로 작성된 프로그램이 실행되도 록 처리하는 기법
● 프로그래밍 언어의 변천사

본문내용

● 좋은 프로그래밍 언어를 설계하는 원칙
1.효율성
- 언어에 대한 효율성(efficiency)은 목적 코드의 효율성, 번역의 효율성, 구현 용이성, 프로 그래밍 효율성 등으로 분류할수 있다.
① 목적 코드의 효율성
목적 코드의 효율성은 번역기가 효율적인 실행 코드를 생성할 수 있어야 함을 의미한다. 여기서 번역기는 컴파일러 또는 인터프리터를 말하는데 구체적인 내용은 3절에서 살펴 볼것이다.
② 번역의 효율성
번역의 효율성은 번역기가 효율적으로 실행 코드를 생성할 수 있어야 함을 의미한다. 이는 설계된 언어가 번역기에 의해 다르게 번역될 수 있어야 함을 뜻하는 것이다. 번역의 효율성은 신뢰성과는 상반되는 성질로, 번역기가 오류 검사를 하지 않으면 번역의 효율 성은 높아지나 신뢰성은 떨어진다.
③ 구현 용이성
번역기를 효율적으로 작성할 수 있어야 함을 의미한다. 설계된 언어가 복잡하면 구현 용이성이 떨어지는데 이러한 언어의 예로 ALGOL 60 과 Ada를 들 수 있다.
④ 프로그래밍 효율성



● 프로그래밍 언어의 변천사
1950년대 이전
■1945년 : 폰 노이만 개념
프로그램 내장 방식
메모리에 프로그램을 저장하고 프로그램 명령어들을 차례대로 실행
현재 대부분의 컴퓨터들이 이 방식을 적용
조건 제어 전이(conditional control transfer)
정해진 순서대로만 수행하도록 만들어진 하나의 프로그램이 아니라
어떠한 순서로도 이동하여 실행될 수 있는 코드의 소모임인 서브루틴
개념(IF~THEN: 조건 구조, FOR: 반복 구조)
■1943년 : Plankalkul (플란칼퀼)
콘라트 추제(Konrad Zuse) 개발
체스에 적용, 궁극적인 개발 목적은 2진 산술연산에 사용된 Konrad Z
시리즈 컴퓨터를 위함
단일 비트를 제공하고 정수 타입과 부동소수점 수치 타입을 지원
배열과 레코드도 제공하는데 다른 레코드를 레코드의 원소로 포함 가능
이 언어는 실제로 구현되지 않음
1950년대
■1950년대 : 어셈블리 언어
어려운 기계어의 코드를 move, jump, branch 등과 같은 쉬운
명령어로 나타냄
다운로드 맨위로