Fluent interface (біжучий чи текучий інтерфейс) в програмуванні — спосіб конструювання об'єктно-орієнтованого API, в якому читабельність коду є близькою до звичайного прозового тексту. Термін вперше був застосований Еріком Евансом та Мартіном Фаулером. Нижче подано приклад для фреймворку тестування JMock: FluentInterface , Martin Fowler, 20-12-2005.

mock.expects(once()).method("m").with( or(stringContains("hello"), stringContains("howdy")) );

Історія Термін "fluent interface" з'явився в кінці 2005, хоча подібний підхід використовувався в Smalltalk ще в 1970-х, та в інших в 1980-их. Типовим прикладом є бібліотека iostream в мові C++, де використовуються оператори << та >> для передачі повідомлень, багатократної пересилки даних до одного і того самого об'єкта.

Приклади

C++ Нижче наведено приклад, де fluent interface обгортка застосована поверх більш традиційного інтерфейсу C++:

Python В мові Python використовують повернення `self` в методі.

Примітки