본문 바로가기
공부

프로그래밍 언어의 설계 원칙

by Coding_mon 2020. 9. 11.

 

- 효율성 (efficiency)

  • 목적코드의 효율성
    - 컴파일러, 인터프리터가 효율적인 실행 코드를 생성 할 수 있어야 함.
  • 번역의 효율성
    - 설계된 언어가 번역기에 의해 빠르게 번역될 수 있어야 함.
  • 구현 용이성
    - 설계된 언어가 복잡하다면 용이성이 떨어지게 됨
  • 프로그래밍 효율성
    - 언어로 얼마나 빠르고 쉽게 프로그램을 작성할수 있는가 
    - 언어 구조가 간결하다면 프로그래밍의 효율성이 높아지게 됨 (LISP)

- 일반성 (generality)
  > 밀접하게 관련 있는 개념들을 하나의 더 일반적인 것으로 결합하는 성질

- 직교성 (Orthogonality)
  > 언어의 구성자가 문맥이 다르다고 다른 의미를 가져서는 안된다는 성질

- 획일성 (Uniformity)
  > 비슷하게 보이는것 은 비슷하게, 의미를 가져야 한다.

- 간경성 (Simplicity)
  > 언어는 복잡하지 않으며 간결해야 된다.

- 표현력 (Expressiveness)
  > 복잡한 과정이나 구조를 프로그래밍 언어로서 얼마나 쉽게 표현이 가능한 정도
  > 표현력은 간결성과 상충이 될 수 있음 (비슷한 반비례관계)

- 확장성 (Extensibility)
  > 사용자가 언어에 새로운 기능을 추가 할 수 있도록 하자는 성질,
  ex) 새로운 데이터 타입 정의, 라이브러리 추가..

- 정확성 (Preciseness)
  > 프로그램의 실행을 예측 할 수 있도록 하는 언어에 대한 정확한 정의가 있는 정도

- 기계 독립성 (Machine independence)
  > 언어가 특정 하드웨어에 의존적이지 않고 독립적이어야 한다.

- 제약성 (Restrictability)
  > 언어에 대한 최소한의 지식과 일부 언어 구조만 알고 있더라도 프로그램을 작성 할 수 있어야 한다.

- 보안성 (Security)
  > 신뢰성과 밀접한 연관을 가지며 프로그램의 오류의 수를 최소화 해야 한다.

'공부' 카테고리의 다른 글

소프트웨어공학  (0) 2021.03.03
프로세스  (0) 2020.10.15
인터프리터 프로그래밍 해석기법, 파이썬  (0) 2020.09.11
프로그램의 컴파일 과정  (0) 2020.09.11
프로그래밍 언어란  (0) 2020.09.11

댓글