Ada 언어의 설계 목표

Ada(에이다)는 프로그램 신뢰성 및 유지보수, 인간 활동으로서의 프로그래밍, 그리고 효율성을 염두에 두고 설계되었습니다.

프로그램 신뢰성 및 유지보수

작성 편의성보다 가독성을 우선시합니다. 예를 들어, 모든 변수를 명시적으로 선언하고 타입을 지정하게 하여, 컴파일러가 타입 관련 오류를 미리 잡아낼 수 있도록 합니다. 또한, 오류를 유발하기 쉬운 모호한 문법이나 표기법을 배제하고, 자연어(영어)와 유사한 구조를 지향합니다. 마지막으로, 개별 단위(파일) 컴파일을 지원하면서도, 각 단위 간 검사를 엄격하게 수행하여 프로그램의 개발과 유지보수를 용이하게 합니다.

인간 활동으로서의 프로그래밍

Ada 설계 과정에서는 지나치게 복잡해지는 것을 피하면서 비교적 적은 수의 기본 개념을 일관되고 체계적으로 통합하고자 했습니다. 특히 이 설계에서는 사용자의 기대에 직관적으로 부응하는 언어 구조를 제공하는 데 중점을 둡니다.

오늘날 프로그램 개발은 독립적으로 생산된 소프트웨어 구성 요소로부터 프로그램을 조립하는 능력이 중요해졌습니다. 패키지, 프라이빗 타입(private type), 제네릭 유닛(generic unit)의 개념은 이와 직접적인 관련이 있으며, Ada 언어의 다른 많은 측면에도 파급 효과를 미칩니다. 이와 관련된 또 다른 고려 사항은 변화하는 요구사항에 맞춰 프로그램을 유지보수하는 것입니다. 타입 확장과 계층적 라이브러리는 기존에 테스트를 거쳐 신뢰성이 확보된 구성 요소에 미치는 영향을 최소화하면서 프로그램 수정이 가능하도록 합니다.

효율성

특정 언어 기능이 너무 복잡한 컴파일러를 요구하거나, 저장 공간 또는 실행 시간 면에서 비효율을 초래하면 이는 모든 환경에 부담을 주므로 이러한 기능을 피했습니다. Ada 언어의 모든 구조는 개발 당시의 구현 기술을 기준으로 신중하게 검토되었습니다. 구현 방법이 명확하지 않거나 과도한 시스템 자원을 요구하는 기능은 Ada 언어 설계에서 제외되었습니다. 현대의 멀티코어 프로세서 환경에서 안전하고 효율적인 프로그래밍을 지원하기 위해 병렬 구조가 언어에 도입되었습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다