契約式設計是 Eiffel 語言設計中的一個核心原則,它認為每個類都可以顯式地對它的輸入(它的需求)施加約束,說明它將提供什麼(它保證的)以及它的不變式(對該類始終為真的語句)。
此外,Eiffel 支援一組豐富的斷言語句,從迴圈構造的驗證到靈活的除錯機制,到程式碼有效性的內聯檢查。
另見維基百科上的 契約式設計 文章