Interface

Noun · Development

Definitions

  1. A contract that defines a set of method signatures without implementations, which concrete classes must fulfill. Enables polymorphism, dependency inversion, and loose coupling. In Go, interfaces are satisfied implicitly; in Java and TypeScript, they're declared explicitly.

    In plain English: A promise that a class will provide certain methods, without saying how — like a job description that lists required skills without dictating how the person learned them.

    Example: "Program to an interface, not an implementation — the most quoted and least followed advice in software engineering."

Related Terms