契約による設計 契約プログラミング(けいやくプログラミング、英: Contract programming)または契約による設計(けいやくによるせっけい、英: Design by Contract; DbC)は、ソフトウェアの正確性[注 1]と頑健性[注 2]を高めるためのソフトウェア設計の方法論である。DbC はロバート・フロイド、アントニー・ホーア、エドガー・ダイクストラらの形式的検証の仕事を基礎にしている[1]。DbC は(抽象データ型に基づく)オブジェクト指向プログラミングにおける表明の利用や、継承に伴う表明の再定義の原理的規則、例外処理の原理的規則などを提供する[2]。 DbC は、バートランド・メイヤーによって提案された[3][4][5]。 概要[編集] 「契約による設計」(DbC)における中心的な概念は、クライアントとサプライヤ[6]の契約 (contract) である。Db
![契約プログラミング - Wikipedia](https://cdn-ak-scissors.b.st-hatena.com/image/square/e1171e9f100169e104c1a2dc25ff146f62f08a53/height=288;version=1;width=512/https%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2Fe%2Fea%2FDesign_by_contract.svg%2F1200px-Design_by_contract.svg.png)