Download presentation
Presentation is loading. Please wait.
1
1장 기본적인 사항 순천향대학교 컴퓨터공학부 하 상 호
2
1장 기본적인 사항 “프로그래밍 언어론”의 과목을 왜 배우는가? 프로그래밍 영역 언어 평가기준 (판독성, 작성력, 신뢰성 등)
언어 설계 절충 언어 설계에 미친 영향 언어 부류 구현 방법 프로그래밍 환경
3
프로그래밍 언어론을 왜 배우는가? 생각을 표현할 수 있는 능력 향상 적합한 언어를 선택할 수 있는 배경 향상
Ref. Sapir-Whorf 가설 언어는 제어구조, 데이터 구조, 추상화 유형을 제한 => 알고리즘 제한 새로운 언어를 배우거나 모의실험을 통한 언어 기능 확장을 통해서 SW 개발 사고 과정 향상 가능 적합한 언어를 선택할 수 있는 배경 향상 자신이 가장 잘 알고 있는 언어가 프로젝트에 적합하지 않은 경우에도 그 언어를 선택하려는 경향 문제를 가장 잘 해결할 수 있는 특징들을 갖는 언어를 선택 가능
4
프로그래밍 언어론을 왜 배우는가? 새로운 언어 습득 능력 향상 컴퓨터 프로그래밍은 성장하고 있는 분야
설계 방법론, 소프트웨어 개발도구, 프로그래밍 언어 등 언어의 기본적 개념을 습득하면, 이러한 개념들이 언어 설계에 어떻게 수용되어 있는지 파악하는 것이 용이 객체지향 개념 이해 여부 프로그래밍 언어/컴파일러의 판매 책자, 언어의 기술서와 평가서 등에 대한 이해도 향상 프로그래밍 언어 용어와 기본 개념 숙지 필요
5
프로그래밍 언어론을 왜 배우는가? 새로운 언어 습득 능력 향상 TIOBE의 프로그래밍 언어의 상대적 지수
6
프로그래밍 언어론을 왜 배우는가? TIOBE index
7
프로그래밍 언어론을 왜 배우는가? 구현의 중요성에 대해서 더 많이 이해 가능
개념에 영향을 미치는 구현 상의 고려사항 이해 필요 언어가 설계된 의도대로 보다 지능적으로 언어 사용 가능 언어 구조들간의 선택과 그 결과를 이해 가능 컴퓨터가 언어 구조들을 어떻게 실행시키는지 그려보는 것이 가능 양자 택일의 언어구조들간의 상대적 효율성 파악 가능 구현 세부사항 관련 버그 탐지 및 수정 가능
8
프로그래밍 언어론을 왜 배우는가? 이미 알고 있는 언어에 대한 더 나은 사용 전반적인 전자계산분야의 이해도 향상
C의 모든 특징을 사용하고 있는가? 이전에 사용하지 않았던 특징을 배워서 사용 가능 전반적인 전자계산분야의 이해도 향상 가장 좋은 언어가 가장 널리 사용되었는가? Ex. Fortran vs. Algol 60
9
프로그래밍 영역 과학응용 분야 사무응용 분야 인공지능 분야 시스템 프로그래밍 웹 소프트웨어
10
프로그래밍 영역 과학응용 분야 최초 컴퓨터(1940년대 후반 ~ 50년대 초반)의 응용 분야
간단한 데이터 구조, 상당한 양의 부동소수점 산술연산 가장 공통된 데이터 구조: 배열/행렬 가장 공통된 제어구조: 루프/선택문 효율성이 주요 관심 Fortran(1956)
11
프로그래밍 영역 사무응용 분야 1950년대에 시작 상세한 보고서 생성 기능 십진수, 문자 데이터의 정확한 표현/저장 기능
십진수 산술연산 COBOL(1960)
12
프로그래밍 영역 인공지능 분야 수치 계산보다는 기호 위주의 계산 숫자보다는 이름들로 구성된 기호들이 조작
리스트의 데이터 구조, 더 많은 융통성 요구 제어는 재귀와 조건식으로 주로 표현 LISP(1959), Scheme(1975), Prolog(1970)
13
프로그래밍 영역 시스템 프로그래밍 시스템 소프트웨어 개발 목적 실행 효율성, 외부장치와의 인터페이스를 위한 저급 특징
운영체제, 프로그래밍 지원 도구들 실행 효율성, 외부장치와의 인터페이스를 위한 저급 특징 C(1978) 저급, 실행 효율적, 비안전적 시스템/전문 프로그래머 사용에 적합
14
프로그래밍 영역 웹 소프트웨어 마크업 언어부터 범용 프로그래밍 언어에 이르기까지 다양한 언어들로 지원 동적 웹 콘텐츠 지원
계산 기능 일부를 콘텐츠에 표현 JavaScript, PHP 마크업/프로그래밍 하이브리드 언어 문서처리를 제어하는 구조 포함 XSLT, JSTL
Similar presentations