# IB/Group 4/Computer Science/Computer Organisation/The Application Layer
## What are Web browsers ?

Examples of Web browsers
Google Chrome, Firefox, Safari, Opera, Internet Explorer
What is it?
A web browser is a general application software that allows access to websites. It is a software application that allows users to access and view web pages and other content on the internet. It retrieves information from web servers and displays it on the user's device in a format that can be easily read and navigated.
Web browsers provide users with a graphical interface (GUI) that allows them to interact with web pages through menus, buttons, and other controls. They also support features such as bookmarks, history, and tabbed browsing, which allow users to easily navigate and manage their online activities.
How does it work?
The user, also called ‘client’, enters the URL of a website in the browser.
The browser then uses a world wide database called the DNS (Domain Name System) to match the website URL to the corresponding IP address. The IP address is a storage location which specifies where the website data is stored. The server is a computer hardware that stores data and provides functionality for other programs called ‘clients’.
The browser then makes a request to the server that has the IP address. The server then retracts the html (the source code) of the website which is itself either stored in the server or generated by the server.
This source code is received and read by the browser. Here's a diagram of how it works:
Thus the purpose of a web browser is to bring information from a server to the client (through the request and response) allowing the client to view the information.

## What are Database Management systems ?

The Database Management System(DBMS) is responsible for organising data in a structured manner along with security and access controls of that database(create, protect, read, update and delete data). While the spread sheet allows us to store data, a Database Management system enables functions such as "filtering by type" which facilitates the management of large amount of data for big companies.
Within a data base, we can have users with different rights.
MySQL and mongoDB are two examples of databases.

## What are emailing softwares ?

Email software is a program that has features and capability for sending and receiving electronic mail. In most cases, these programs are email editors with various formats, layout, and message capability tools. It hosts, optimizes, or secures digital communications for personal or business use.
Organizations, small and large, deploy email softwares because digital communication is essential to conducting modern business.
Here are the features of emailing softwares:
* Inbox
* Address book
* Transmit attachments
* Ability to organize emails: anti-spam, archiving, trash etc...
* Notifications
There are 3 types of emailing softwares.
The first one is marketing, where emails are sent in real time for customed communications such as advertisements, brands, or fundraisers. The second one is security, this is a program built to prevent, detect, and respond to potential threats. The last one is optimization, that improves performance and adapt to evolving email marketing solutions.
An example of an emailing software is Gmail, where users are allowed to organize, send, and receive emails. It has layouts for different email types and has tools to format emails.

## What are word processing softwares?

Word processing software refers to a type of application which manages the creation, storage and printing of text files.
It allows the user to write and modify text files, with all usable tools displayed in an intuitive GUI.
It is one of the most common types of applications, present in virtually every modern computer.
Common examples of word processing softwares include Microsoft Word, Google Docs, and Apple Pages.

## What are Computer Aided Design (CAD) softwares?

Computer Aided Design softwares are programs that can create digital designs on a computer. It is often used by architects, product designers, engineers, manufacturers, etc…
It allows users to create a design in 2D or 3D, visualize its construction, modify and optimize design processes, and view the final product. CAD software is also used to be able to design things better than would be possible without it, as CAD allows users to create designs with large amounts of detail.
non-comprehensive list of different CAD softwares:
* AutoCAD: used for architectural, engineering, and industrial designs.
* SolidWorks: used for manufacturing and product design.
* Pro/Engineer (Creo): aerospace and automotive engineering.
* SketchUp: beginner friendly, good for architectural, interior, and landscape design
An example of a large scale use of CAD design is within the car manufacturer Tesla.
Tesla uses CAD to design their electric vehicles and their parts. They use these tools in order to create a complete 3D model of the car (interior and exterior). These models are mainly used to ensure that all the parts fit well together and function as predicted. They can also use these models to simulate the car’s performance in different situations, testing acceleration, charging time, wind resistance, fuel consumption, etc… This is also used to tweak the car’s aesthetic and appearance.
Note: CAD software is not to be confused with Graphics processing software, although they do have many similarities and many types of CAD software are also graphics processing software.

## What are spreadsheet softwares?

Spreadsheet software is general application software that allows for data that is arranged in rows and columns to be used in calculations. Spreadsheets have many usages ranging from storing data, creating budgets, to displaying graphs and charts.
Spreadsheet softwares are used a lot because they allow users to manipulate data, organize it, and arrange it in any way they need. They are usually user-friendly and relatively easy to use. Most spreadsheets are able to be shared with others and have multiple people collaborate on the same page. This is also why spreadsheet softwares are used often by businesses and organizations.
Some examples of popular spreadsheet softwares are:
* Google Sheets
* Microsoft Excel
* LibreOffice
* Zoho
* OpenOffice Calc
* Smartsheet
* Numbers
But why are spreadsheet softwares important?
They allow users to easily and efficiently organize, analyze, visualize, and manipulate data.

## What are the main GUI elements of a software ?

In order to maintain clear interaction and communication with the user, software generally follows the WIMP (window, icon, menu, pointer) paradigm, using the following GUI elements of the user interface:
- Windows: a resizable area of the screen that displays information and can be dragged around the desktop with a mouse cursor. Different applications' windows can appear to overlap, and closing these windows generally also halts its associated program.
- Menus: a (usually) collapsible display of different options that allow the user to perform different tasks.
- Icons: a small image that represents different objects that have tasks associated with them (a floppy disk for saving, for example).
- Controls (or widgets): display a collection of related items or actions related to a certain concept (see image), such as Insert for inserting different types of media into a document.
- Pointer: echoes the user's movements through a pointing device, such as a mouse or trackpad, and allows the user to directly interact with the program by clicking and dragging GUI elements.
* ↑ How The Web Works - The Big Picture, retrieved 2023-04-05