디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

Ada 프로그래밍: 9. 계약에 의한 설계(DbC)

나르시갤로그로 이동합니다. 2025.08.11 00:26:50
조회 57 추천 0 댓글 0

9. 계약에 의한 설계(DbC)

Ada 2012에서 표준화된 계약에 의한 설계(Design by Contract, DbC)는 프로그래머가 형식적이고 검증 가능한 명세를 소스 코드에 직접 내장할 수 있게 하여 Ada의 신뢰성 기능을 향상시킵니다. 이러한 계약은 실행 가능한 문서 역할을 하며, 고수준 요구사항을 구현에 연결합니다. 컴파일러 스위치(-gnata)로 활성화하면, 이러한 계약은 실행 시간에 검사되어 위반 시 Assert_Failure 예외를 발생시킵니다.

Ada에서 DbC의 핵심 구성 요소는 다음과 같습니다:

  • 전제조건(Preconditions): 서브프로그램이 호출되기 전에 참이어야 하는 조건입니다. 이는 호출자 측의 의무입니다. with pre =>...로 지정됩니다.

    function square_root (x : Float) return Float with pre => x >= 0.0;
    
  • 후조건(Postconditions): 서브프로그램이 성공적으로 완료되었을 때 참이 될 것을 보장하는 조건입니다. 이는 서브프로그램 구현 측의 의무입니다. with post =>...로 지정됩니다. 후조건은 'old 속성으로 매개변수의 초기 값을, 'result 속성으로 함수의 결과를 참조할 수 있습니다.

    procedure increment (value : in out Integer) with post => value = value'old + 1;
    
  • 형식 불변식 및 술어(Type Invariants and Predicates): 주어진 형식의 모든 객체에 대해 항상 참이어야 하는 조건입니다. 술어(with static_predicate => ...)는 해당 형식의 값이 생성되거나 수정될 때마다 검사되는 속성입니다. 불변식(with type_invariant => ...)은 개인 형식의 속성으로, 공개 연산의 경계에서 검사됩니다.

계약은 유용한 도구입니다. 컴파일된 코드와 일치하는 문서를 제공합니다. 테스트와 디버깅을 위한 정확한 기반 역할을 하며, 형식적 검증 도구에 대한 중요한 입력이 됩니다.

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 생활고나 번아웃 고백이 와닿지 않는 스타는? 운영자 25/08/18 - -
AD 전자제품 세일쇼! 운영자 25/08/19 - -
2880436 으악 타입스크립트 애니 역겹다. 프갤러(218.154) 08.11 75 0
2880435 본인 ai 그림 개발자 될려고 공부중임 [2] ㅇㅇ(106.102) 08.11 88 0
2880434 필연적 구조 논리로 미래를 예견하당 By 나님 ♥냥덩이♥갤로그로 이동합니다. 08.11 47 0
2880433 퇴근 얼마 안남았다 루도그담당(118.235) 08.11 52 0
2880431 KiiiKiii 키키 'DANCING ALONE' 발명도둑잡기갤로그로 이동합니다. 08.11 41 0
2880430 AI가 우리 몰래 비밀언어를 쓴다... 는 것보다 소름끼치는 현 연구결과 발명도둑잡기갤로그로 이동합니다. 08.11 60 0
2880429 특이점 온다 노동해방시대 온다 ㅇㅇ 뒷통수한방(1.213) 08.11 54 0
2880428 긴급] 길냥덩 쥐찢명 잡는 영상 최초 공개 !! ♥냥덩이♥갤로그로 이동합니다. 08.11 52 0
2880427 적당한 추상화는 이해에 도움되는데 [2] 루도그담당(118.235) 08.11 88 0
2880426 GOT7(갓세븐) "A" 발명도둑잡기갤로그로 이동합니다. 08.11 57 0
2880425 나님 스스로에 대해 더 잘 알아야행 ♥냥덩이♥갤로그로 이동합니다. 08.11 47 0
2880424 이게 추상화 계층 레이어가 나뉘어져있다는 이해가 있으면 존나 편함 [3] ㅆㅇㅆ(124.216) 08.11 75 0
2880423 프로그래밍 설계하면서 중요한 청사진은 문법으로 구현되지 않음. ㅆㅇㅆ(124.216) 08.11 72 0
2880422 비전공 프론트엔드 개발자인데 전산직 가능? [5] 프갤러(49.175) 08.11 236 0
2880421 프로그래밍 아키텍트의 장점이 언어에 구애를 안받음 [2] ㅆㅇㅆ찡갤로그로 이동합니다. 08.11 62 0
2880420 영웅의 여정 발명도둑잡기갤로그로 이동합니다. 08.11 34 0
2880419 프로도: "이런 일이 내 시대에 일어나지 않았더라면 좋았을 텐데요." 발명도둑잡기갤로그로 이동합니다. 08.11 46 0
2880418 개발자란 직업 나만 멋있어보임? [4] 프갤러(211.60) 08.11 122 0
2880417 집정리하다 나온 먼지 덮인 ‘이것’···경매서 9000만원에 팔렸다는데 발명도둑잡기갤로그로 이동합니다. 08.11 46 0
2880416 지피티이거 웹에서 루도그담당(118.235) 08.11 56 0
2880415 젊은애들이 힘든일 안 하려는 이유 발명도둑잡기갤로그로 이동합니다. 08.11 50 0
2880414 지피티 글 삭제도 좀 이상하지 않냐 [1] 프갤러(61.79) 08.11 56 0
2880413 챗지피티는 5나오고나서 애가 더 멍청해진거같네 [2] 공기역학갤로그로 이동합니다. 08.11 89 0
2880412 애초에 마소는 이미 자기네들 홈페이지 완성 예시 다 올려뒀잖아 [3] ㅆㅇㅆ(124.216) 08.11 87 0
2880410 "소고기 사먹을 줄 알았더니"…소비쿠폰 풀리자 대박 난 '이곳' 발명도둑잡기갤로그로 이동합니다. 08.11 53 0
2880409 마소가 만들어논거보면 좋은 점이 [1] 루도그담당(118.235) 08.11 70 0
2880408 특이점 온다 노동해방시대 온다 ㅇㅇ 뒷통수한방(1.213) 08.11 49 0
2880407 Asp.net core 이거 존나 좋은데 [2] 루도그담당(118.235) 08.11 80 0
2880405 내가 프갤에 있는 이유)여기 조차도 안가면 이야기할 곳이 없다 [2] ㅆㅇㅆ(124.216) 08.11 80 0
2880403 적어도 프로그래밍 업종은 중국애들이 시민의식이 더 높음. [2] ㅆㅇㅆ(124.216) 08.11 77 0
2880402 유독 프로그래밍 업계라는 애들이 톡시하지 않냐? [2] ㅆㅇㅆ(124.216) 08.11 85 2
2880401 40대부터는 사업을 하고 싶다 프갤러(61.79) 08.11 55 0
2880400 번식한새끼들은 대우해주는거 아무리봐도 이해 좇나 안가네 뒷통수한방(1.213) 08.11 51 0
2880399 Asp.net core는 왜 안 쓰는거냐 루도그담당(118.235) 08.11 69 0
2880398 gpt5.0때문에 오늘 두시간 날렸네 프갤러(175.210) 08.11 66 0
2880397 댓글 이쁘게 발명도둑잡기갤로그로 이동합니다. 08.11 55 0
2880396 이기적인 놈 응용 좆되노 이기 [1] 슈퍼막코더(126.194) 08.11 95 0
2880395 2찢명 운지 스타또⭐+ ♥냥덩이♥갤로그로 이동합니다. 08.11 65 0
2880394 개발자 목메지마라 ♥냥덩이♥갤로그로 이동합니다. 08.11 58 0
2880393 아이 구해주는 코끼리 발명도둑잡기갤로그로 이동합니다. 08.11 48 0
2880392 챗지피티같은 이미지 생성기 만드는거 어려움? ㅇㅇ(106.102) 08.11 58 0
2880391 한국인이 시골에 친척끼리 같이 살던 문화라 남과 비슷해지려 발명도둑잡기갤로그로 이동합니다. 08.11 51 0
2880390 특이점 온다 노동해방시대 온다 ㅇㅇ 뒷통수한방(1.213) 08.11 43 0
2880389 이젠 챗봇에 질문하는걸 프롬프트 엔지니어링 ㅋㅋ [5] 헬마스터갤로그로 이동합니다. 08.11 85 0
2880388 개발자 목 매는게 별 거 있나 재밌으니까 하는거지 [1] ㅆㅇㅆ(124.216) 08.11 64 0
2880387 개발자 목매는이유가 뭐임? [2] 프갤러(221.143) 08.11 113 0
2880386 친자식이 아니랍니다 발명도둑잡기갤로그로 이동합니다. 08.11 56 0
2880385 흠.. 함 운덩하면 이틀은 봐야하는건강? ♥냥덩이♥갤로그로 이동합니다. 08.11 52 0
2880384 찢재앙 국가수지 개박살 ♥냥덩이♥갤로그로 이동합니다. 08.11 55 1
2880383 아스카느님 상하이 여행을 고려 중이시다 [14] 아스카영원히사랑해갤로그로 이동합니다. 08.11 95 0
뉴스 김종국과 비밀연애 후 결혼발표…알려진 ‘예비신부’ 정체 디시트렌드 08.18
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2