본문 바로가기
CS/프로그래밍언어론

프로그래밍 언어의 평가 기준

by Renechoi 2023. 10. 9.

요구사항

  • 표현 풍부성

    -> 프로그래머의 아이디어를 표현할 수 있어야 한다. -> 원하는 것을 작성할 수 있어야 한다.

  • 유지 보수성

    -> 어떤 변화가 생겼을 때 대처가 필요하다. 요구사항이 바뀌는 경우 대응해야 살아남을 수 있다.

  • 실행 가능성

    -> 컴퓨터에서 실행할 수 있어야 함

설계 원칙

  • 규칙성

    -> 언어의 기능이 잘 조합될 수 있어야 한다.

    -> 일반성, 직교성, 일관성

  • 추상화 지원

    -> 실세계의 대상을 추상화하여 나타낼 수 있고 이를 대상으로 어떤 연산을 수행할 수 있어야 함

    -> 데이터 추상화, 제어 추상화, 추상 데이터 타입 정의

  • 복잡도 제어

    -> 복잡한 대상 및 처리 방법을 제어할 수 있어야 한다.

    -> 캡슐화, 모듈화

평가 기준 1

  • 작성력

  • 가독성

  • 신뢰성

  • 직교성

  • 일관성

평가 기준 2

  • 확장성

  • 효율성

  • 유연성

  • 이식성

프로그램 사용자 측면 vs 프로그램 개발자 측면

검사 비용을 줄여야 함 <-> 더 많이 검사해야 함

간단한 기능이 이해하기 쉬움 <-> 복잡하더라도 많은 기능이 지원되어야 함

안전을 위해 더 많은 제약을 가해야 함 <-> 프로그램 작성시 제약이 적어야 함

프로그래밍 언어의 선택 기준

  • 해당 프로그래밍 언어를 사용하는 커뮤니티가 활발하고 호의적인 언어

  • 특정 응용 분야가 존재하는 프로그래밍 언어

  • 접해보지 못한 프로그래밍 패러다임을 지원할 수 있는 프로그래밍 언어


참고자료

  • 프로그래밍 언어론(우균, 김진욱 공저)
반응형