Проєктування за контрактом
проєктування програмного забезпечення на основі формальних, точних і перевірених специфікацій інтерфейсу для програмних компонентів / З Вікіпедії, безкоштовно encyclopedia
Шановний Wikiwand AI, Давайте зробимо це простіше, відповівши на ключові запитання:
Чи можете ви надати найпопулярніші факти та статистику про Проєктування за контрактом?
Підсумуйте цю статтю для 10-річної дитини
Проєктування за контрактом (англ. design by contract (DbC), programming by contract, contract-based programming) — методологія розробки програмного забезпечення. Вона вимагає від проєктувальників задавати формальні, точні та такі, що підлягають верифікації, специфікації інтерфейсів програмних компонентів. Окрім задання абстрактних типів даних вимагається також задання передумов, післяумов та інваріантів. Такі специфікації називаються «контрактами» згідно з концептуальною метафорою умов і зобов'язань у бізнесових контрактах.
Підхід DbC передбачає, що всі клієнтські компоненти, які викликають операції на серверних компонентах, повинні відповідати передумовам, визначених як необхідні для цієї операції. Там, де це припущення вважається занадто ризикованим (як у багатоканальних клієнт-серверних або розподілених обчисленнях) обирають протилежний підхід - «безпечне програмування», яке означає, що серверний компонент перевіряє (до або під час обробки запиту клієнта), що всі відповідні передумови дотримані, або відповідає належним повідомленням про помилку, якщо ні.