1장

  • 프로그래밍 언어의 개념을 공부하는 이유 ( Reasons for Studying Concepts of Programming Languages)
  • 프로그래밍 영역 ( Programming Domains)
  • 언어 평가 기준 ( Language Evaluation Criteria)
  • 언어 디자인에 미치는 영향 ( Influences on Language Design)
  • 언어 범주 ( Language Categories)
  • 언어 디자인 절충안 ( Language Design Trade-Offs)
  • 구현 방법 ( Implementation Methods)
  • 프로그래밍 환경 ( Programming Environments)

프로그래밍 언어의 개념을 공부하는 이유

  • 표현하는 사고의 능력이 향상된다
  • 선택하는 적절한 언어의 배경이 개선된다
  • 새로운 언어들을 배우는 능력이 증가한다
  • 실행의 중요성에 대한 더 나은 이해가 가능하다
  • 이미 알고있는 언어를 더 잘 사용할 수 있다
  • 컴퓨팅의 전반적인 부분이 발전된다

 

프로그래밍 영역

  • 과학적 응용 - 많은 수의 부동 소수점 계산, 배열 사용 - Fortran
  • 비즈니스 응용 프로그램 - 리포트 작성, 10진수 및 문자 사용 - COBOL
  • 인공지능 - 숫자가 아닌 기호, linked list사용 - LISP
  • 시스템 프로그래밍 -  지속적인 사용으로 인한 효율성 필요 - C언어
  • 웹 소프트웨어 - 언어모음, 마크업(예 : XHTML). 스크립(예: PHP), 범용(예: Java) 

 

언어 평가 기준

  • 가독성 (Readability) : 프로그램을 쉽게 읽고 이해할수 있는가
    • 1. 전체적인 단순성 (Overall simplicity)
        - 관리 가능한 기능 및 구성 설정
        - 기능 다중성 최소화
        - 운영자 과부하 최소화
    • 2. 직교성
        - 비교적 작은 초기 구성 요소를 조합 가능
    • 3. 데이터 타입
        - 적절한 사전 정의된 데이터 유형
    • 4. 구문 고려사항
        - 식별자 형태 : 유연한 구성
        - 특수 단어 및 복합문 형성 방법
        - 형태 및 의미 : self 기술적 구성, 의미있는 키워드

  • 쓰기 가능성(Writability) : 프로그램 제작에 쉽게 사용될 수 있는가
  • 신뢰성(Reliability) : 규격 준수(사양에 맞게 수행)
  • 비용(Cost) : 최종 총 비용

 

+ Recent posts