Ada(프로그래밍 언어)

덤프버전 :



파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 에이다 문서의 r139에서 가져왔습니다. 이전 역사 보러 가기
파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 다른 문서에서 가져왔습니다.
[ 펼치기 · 접기 ]
에이다 문서의 r139 (이전 역사)
문서의 r (이전 역사)
문서의 r (이전 역사)
문서의 r (이전 역사)
문서의 r (이전 역사)
문서의 r (이전 역사)
문서의 r (이전 역사)
문서의 r (이전 역사)
문서의 r (이전 역사)




프로그래밍 사이트 선정 프로그래밍 언어 순위 목록

⠀[ IEEE Spectrum 2021 ]⠀
{{{#!wiki style="display: inline-block; margin: 0 0 -5px; min-width: 25%"
⠀[ Stack Overflow 2022 ]⠀
{{{#!wiki style="display: inline-block; margin: 0 0 -5px; min-width: 25%">
⠀[ TIOBE 2023 ]⠀

프로그래밍 언어 목록 · 분류 · 문법


1. 개요
2. 특징
3. Ada 개발환경
4. 여담


1. 개요[편집]


-- Hello world example
--

with Ada.Text_IO; use Ada.Text_IO;
procedure Hello is
begin
   Put_Line ("Hello, world!");
end Hello;

이름의 유래는 세계 최초의 프로그래머로 여겨지는 에이다 러브레이스 백작부인에서 따왔다.[1]

1978년에 당시 존재하던 언어들이 맘에 안 들었던 미국 국방부에서는 프로그래밍 언어 설계를 공모했고, 거기에 뽑힌 것이 바로 CII 허니웰 벌의 진 이히비하가 이끄는 팀에서 개발한 Ada이다. 1983년 ANSI/MIL-STD-1815A[2]로 지정되어 미국 국방부의 표준 프로그래밍 언어가 되었다.

Ada의 목적은 기존 프로그래밍 언어들의 장점을 뽑아 미국 국방부에서 사용되던 수백 개의 프로그래밍 언어를 대신하기 위해 만들어진 것이었다. 물론 목적 달성에는 실패했다. 10개의 표준을 대체하기 위한 새로운 표준을 만들어봤자 표준이 11개가 될 뿐.

ANSI/MIL-STD-1815A는 1993년 개정판 없이 취소되었으며, 현재의 Ada 언어 표준은 ISO/IEC 8652로 지정되어 관리중이다.


2. 특징[편집]


설계방침 자체가 어떤 프로그램이라도 기술할 수 있도록 하였기 때문에 언어 사양이 엄청나게 대규모인 것이 특징이며 특히 대규모 프로그램의 개발과 유지보수가 용이하게 되도록 만들어졌다는 평가가 있다. 실제로 언어 설계를 보면 C언어보다 안정적이면서 여러 가지를 고민한 흔적이 많이 보인다. 문제는 이걸 컴파일러로 구현하는 게 결코 쉽지 않았다는 것이다.[3]

물론 C++과 비교했을때 언어 사양이 특별히 더 방대한 정도는 아니며, C++과 마찬가지로 언어의 모든 기능이 개발에 다 쓰이는것도 아니다. 오래된 언어이다 보니 최근의 언어였다면 라이브러리로 제공될 기능이 문법으로 제공되는 정도의 차이가 있다.

코드의 Writability보다 Readability를 중요시한다. Ada 언어의 주 사용처가 군사용 무기체계의 내장형(임베디드) SW의 구현이기 때문이다. 무기체계는 한번 도입되면 짧게는 10여년에서 길게는 수십년까지도 유지보수 해야 하기 때문.

F-22 항공기 항전장비의 소프트웨어를 비롯하여 미국에서 개발되는 많은 군용 소프트웨어에 Ada가 사용된다. 또한 MIT항공공학 전공자들이 제일 처음으로 배우는 과목 중에 하나이다. 하지만 지나치게 제한적인 용도로 인해 인력풀이 작기때문에 최근에는 군용 소프트웨어도 대부분 C++로 대체되는 형편이다.

3. Ada 개발환경[편집]



  • SciTools Understand - Ada 코드 분석을 지원하는 상용 IDE. 개발보다는 코드 분석과 유지보수에 초점을 두고 있다.


4. 여담[편집]


  • 같은 이름을 쓰는 암호화폐 에이다(암호화폐)의 블록체인인 카르다노는 에이다로 프로그래밍되지 않았다. 카르다노를 프로그래밍한 언어는 하스켈이다.
  • F-35 개발과정에서 개발자들이 미 국방부의 지정 개발언어인 Ada에 적응하지 못해 C++으로 전환하기 시작한 것이 재앙의 시작이 되었다는 의견도 있다.
파일:크리에이티브 커먼즈 라이선스__CC.png 이 문서의 내용 중 전체 또는 일부는 2023-10-20 13:40:42에 나무위키 Ada(프로그래밍 언어) 문서에서 가져왔습니다.

[1] 그 이유로 '에이다' 라고 읽는다.[2] 표준 번호도 나름 의미가 있는데, 바로 에이다 러브레이스 백작부인이 태어난 연도이다.[3] 첫 버전인 Ada 83은 성능상의 문제가 있었다.