Інтэрфейс (аб’ектна-арыентаванае праграмаванне)

Інтэрфе́йс (англ. interface) — праграмная/сінтаксічная структура, якая вызначае адносіны між аб'ектамі, якія падзяляюць акрэсленае паводніцкае мноства і не звязаны няйначай па-іншаму. Пры праектаванні класаў, распрацоўка інтэрфейса тоесна распрацоўцы спецыфікацыі (мноствы метадаў, якія кожны клас, які выкарыстоўвае інтэрфейс, павінен рэалізаваць).

Інтэрфейсы, нароўні з абстрактнымі класамі і пратаколамі, усталёўваюць узаемныя абавязацельствы між элементамі праграмнай сістэмы, што з'яўляецца фундаментам канцэпцыі праграмавання па кантракту (англ. design by contract, DbC). Інтэрфейс вызначае мяжу ўзаемадзеяння між класамі ці кампанентамі, спецыфікуючы акрэсленую абстракцыю, якую ажыццяўляе рэалізуючая старана.

Інтэрфейс у ААП з'яўляецца строга фармалізаваным элементам аб'ектна-ориентированного языка і шырока используется у зыходным кодзе праграм.

Інтэрфейсы дазваляюць наладзіць множнае наследаванне аб'ектаў і ў тое ж час вырашыць праблему ромбападобнага наследавання. У мове C++ яна вырашаецца праз наследаванне класаў з выкарыстаннем ключавога слова virtual.

Зноскі