Interface #
The term interface is used in a variety of contexts:
- Graphical User interface (GUI),
- Terminal User interface (TUI),
- Command-Line Interface (CLI),
- Application Programming Interface (API),
- hardware interface,
- etc.
A programming interface is a set of commands, methods, etc. that allow interacting with a program.
Examples.
- if Alice uses git via its CLI, then she has to enter commands that git recognizes as a possible inputs,
- if Alice uses git via a GUI, then her clicks trigger such commands,
- if a program calls git, then it also has to use such commands.
Warning. A programming interface usually specifies communication in one direction only. So when two programs communicate, they may use different interfaces, one in each direction