User interface
A user interface is the means through which a person interacts with a computer system, including its controls, displays, and input methods.
Affordance: A perceived or actual property of an object that suggests how it can be used. Controls work best when their appearance suggests the actions they support.
Event-driven programming: A programming model in which software responds to events such as clicks, keystrokes, or messages. Interface controls commonly trigger event handlers when users activate them.
Command-line interface: A text-based interface in which users enter commands at a prompt. It replaces visible controls with typed commands and rewards command knowledge.
Web design: The design of websites and web applications, including their layout, behavior, and presentation. Web interfaces must work across browsers, devices, and varied user contexts.
Cognitive load: The mental effort required to process information and perform tasks. Dense or inconsistent interfaces can consume attention needed for the underlying task.
Signifier: A perceivable cue that indicates where or how an action can be performed. Labels, icons, and visual cues make available interface actions legible.
State machine: A computational model consisting of states and transitions triggered by inputs. A system's current state determines which interface actions are available and what they do.
Graphical user interface: An interface that uses graphical elements such as windows, icons, menus, and pointers. It is a prominent interface type built around visual objects and direct manipulation.
Mobile app: Application software designed to run on mobile devices such as smartphones and tablets. Small touchscreens and mobile contexts shape its interaction patterns.
Error prevention: Design methods that reduce the likelihood of users making mistakes. Constraints, confirmations, and clear choices can prevent costly interface errors.