What is GUI? [A Complete Overview]

A Complete Guide for Beginners Enroll Course Now

GUI stands for Graphical User Interface which is a type of interface that allows users to interact with electronic devices using graphical elements such as icons, buttons, and windows rather than text-based commands. In this article, I will discuss what is GUI, its elements & brief history, and how it works using examples &  images.

What is GUI?

What is GUI? Well, A GUI is a visual interface that allows users to interact with electronic devices using icons, menus, and other graphical elements. Unlike text-based interfaces, GUIs display information and user controls in a graphical form that can be accessed using a pointing device such as a mouse or a finger on the touch screen. GUIs are user-friendly & made computers and digital technologies accessible to all. Because of GUIs even an unskilled person without any programming knowledge now can operate different functions of electronic devices.

Check the below image of a windows display, where you can see the power and settings buttons on the left-bottom corner, taskbars at the bottom, and time and battery icons on the right-bottom corner. All these buttons & icons are representing GUI.Display of windows.

Origin of GUI

Now that you know what is GUI let’s learn from when it started its journey. The Graphical Interface (GUI) was first developed in the 1970s at the Xerox Palo Alto Research Center (PARC) in California. The first GUI was called “Alto” which featured icons, windows, menus, and a mouse for input but was never commercialized. In 1981, Apple introduced Lisa, the first commercial computer that featured GUI. Then the more successful one named Macintosh in 1984. After that, Microsoft released Windows 1.0 in 1985, which initially had a limited GUI, but gradually was improved with every new release. And this is how the popularity of the GUI continued to grow. Today, GUIs are a standard feature of most electronic devices and software enabling users to interact with them easily & productively.

Elements of GUI

To know more explicitly what is GUI, you should know about different elements and objects that developers have created to make GUI user-friendly. So let’s talk about these elements. Users use these elements to interface with the devices & software easily. Check the below list where I will give short detail about some of them.

  • Windows→ The primary rectangular-shaped display that contains current program information or applications.
  • Icons→ Small images representing files, folders, or applications.
  • Menus→ A list of options or commands is offered to the user through the menu.
  • Menu bar →The horizontal bar which contains the labels of menus.
  • Toolbars → A set of graphical icons to control software functions or to perform a specific task.
  • Buttons → Graphical elements that can be clicked on to perform a specific task.
  • Checkboxes→ An on/off switch that can either be selected or not selected to indicate a specific option.
  • Ribbon→ This is used for the replacement of the file menu and toolbar that groups programs activities together.
  • Text boxes→ An area where users can input or display information.
  • Tab→ Clickable area (indicated by a plus “+” sign) at the top of a window that opens up another area or page.

How Does the User Interact with GUI?

Users interact with GUI through a combination of input devices and visual elements on the screen. There are several input devices through which a user can interact with GUI elements such as a mouse, keyboard, touch screen, or stylus. Users use these input devices to interact with GUI visual elements such as icons, menus, balloons, sliders on the screen, etc. They can perform various actions such as clicking, double-clicking, dragging, dropping, scrolling, typing, and selecting options from menus to perform tasks or execute commands. GUI has made an easy and user-friendly interaction possible by providing a visual representation of the data and tasks.

See the below image where a user is interfacing with his computer using a stylus input device and GUIs elements such as file icons, email icons, clock, and Chrome web browser.A user is interfacing with computer using GUI.

Types of Graphical Interface

There are three types of Command interfaces.

  • Command Line Interface.
  • Graphic User Interface.
  • Menu-Driven Interface.

A. Command Line Interface

Command Line Interface or CLI is a type of interface that is text-based, mostly used by developers, system administrators, and power users for tasks such as running scripts, navigating through filesystems, managing processes, and so on. Users enter text commands through command prompts (Bash, Command Prompt, PowerShell, Terminal, etc.) that are interpreted and executed by OS, allowing efficient system interaction.

B. Graphical User Interface

GUI also known as Graphical User Interface is the most used Command interface these days. GUI uses graphical icons to indicate locations on your machine and to navigate through the operating system.

C. Menu-Driven Interface

Menu-Driven Interface is based on giving you a menu so that you can navigate through your device. It helps you access folders, open applications, and all the other things you might need to do on your device. Now, an example of a Menu-Driven Interface is the mobile phone in your hand. Well, your mobile phone always gives you a list of options or a menu. And from the menu icon, you select which application to open, what file to download or remove, etc.

Difference Between CLI & GUI

CLI stands for Command Line Interface which is the first interface that people used to interact with technology and software. However, CLI was difficult to use for people without programming knowledge as it requires inputting texts to perform a command. Which was not user-friendly & vastly accessible.

As technology advanced, developers felt the need to create a more user-friendly interface, hence the creation of GUI took place. GUI features graphical icons and visual elements that make it easier for users to interact with computers regardless of their low programming knowledge. So, the key difference between CLI & GUI is that CLI requires text commands while GUI allows users to perform tasks by clicking on icons and other graphical elements.

Do all OS have GUI?

No, not all Operating Systems (OS) have GUI. Some OSs such as DOS (Disk Operating System) and Unix were generally designed to be used with a CLI and didn’t have GUI. Some other examples of OS without GUI include server operating systems that are designed to be run on servers and accessed remotely using a CLI.

List of GUI-based OS

Most of the modern versions of OS now have GUI or they use a hybrid interface that allows both CLI and GUI interaction. Here are some examples of GUI-based OS,

  • Microsoft Windows
  • macOS
  • Linux
  • Chrome OS
  • Android
  • iOS
  • Ubuntu

Advantages & Disadvantages of GUI

The GUI uses different graphical elements to create an intuitive and user-friendly interface for interacting with electronic devices and software. It has many advantages along with some shortcomings. Below I will discuss the advantages and disadvantages of GUI.


  • User-friendly, as GUIs are easy to use with graphical icons and menus.
  • Aesthetically pleasing, because GUIs make electronic devices look more visually appealing.
  • Easy to learn, users can learn to use GUIs more quickly.
  • Consistency, GUIs have consistent looks with different applications, making it easier for users to switch between them.
  • Better productivity, users can navigate to desired tasks quickly with fewer errors.


  • Resource-intensive, GUIs consume more system resources than text-based interfaces, causing slower performances of older or less powerful devices.
  • Less efficient for power users, as GUIs can be less efficient for advanced users who prefer to navigate via CLI.
  • Screen clutter, GUIs can become cluttered with too many windows and icons, making it difficult to find or perform a specific task.
  • Limited Customization, GUIs have a limited set of customization options.
  • Time-consuming, developing and implementing GUIs can be both time-consuming and costly.

An Example of How to Use a GUI for a common task

Check out the following example, where I will show how you can interface with your computer through GUI while performing a simple task. This example will clarify your concept of what is GUI and how you are using it in your daily life without even knowing.

First, turn on your computer and log in to your user account.

  1. Click on the Window “Start” button in the lower left-hand corner of the screen.Start icon of GUI.
  2. In the start menu, click on the “File Explorer” icon, which looks like a folder.File Explorer icon of GUI.
  3. The file explorer window will open with a list of files and folders on your computer. You can navigate through any of them through the navigation pane on the left-hand side.Files searched.
  4. You can view any file from there, just double-click on the file. The application will open, displaying the contents of the file. You can now edit or simply view the file as needed.
  5. When you are done, close the application by clicking on the “X” button in the upper right-hand corner of your window.Files searched using GUI elements.

This is how just by clicking on icons or graphical elements of GUI, just like I used the file explorer icon in this example, you can interface through your computer easily.


So to sum up, GUI is the easiest type of interface that provides the visual graphical representation of program data & files. It allows users to interact with these data through visual elements such as icons, menus, windows, etc. Hope this article helped you to learn what is GUI & how it works.

Similar Readings

Rate this post
Monira Akter Munny

Hello!! This is Monira Akter Munny. I'm a Linux content developer executive here, at SOFTEKO company. I have completed my B.Sc. in Engineering from Rajshahi University of Engineering & Technology in the Electrical & Electronics department. I'm more of an online gaming person who also loves to read blogs & write. As an open-minded person ready to learn & adapt to new territory, I'm always excited to explore the Linux world & share it with you! Read Full Bio

Leave a Comment