Top Qs
Timeline
Chat
Perspective

Front end and back end

Presentation and data management in software systems From Wikipedia, the free encyclopedia

Remove ads

In software development, front end refers to the presentation layer that users interact with, while back end refers to the data management and processing behind the scenes. "Full stack" refers to both together. In the client–server model, the client is usually considered the front end, handling most user-facing tasks, and the server is the back end, mainly managing data and logic.

Introduction

In software architecture, there can be many layers between the hardware and end user. The front end is an abstraction, simplifying the underlying components by providing a user-friendly interface, while the back end handles data storage and business logic.

Examples

E-commerce Website: The front end is the user interface (e.g., product pages, search bar), while the back end processes payments and updates inventory.

Banking App: The front end displays account balances, while the back end handles secure transactions and updates records.

Social Media Platform: The front end shows the news feed, while the back end stores posts and manages notifications.

In telecommunication, the front end can be considered a device or service, while the back end is the infrastructure that supports the provision of services.

A rule of thumb is that the front end, or client side, includes any components manipulated by the user. The back end, or server side, usually resides on the server, often far removed physically from the user.

Remove ads

Software definitions

Summarize
Perspective

In content management systems, the front end refers to views facing end users, and the back end refers to views facing administrative users.[1][2]

In speech synthesis, the front end refers to the part of the synthesis system that converts the input text into a symbolic phonetic representation, and the back end converts the symbolic phonetic representation into actual sounds.[3]

In compilers, the front end translates computer source code into an intermediate representation, and the back end produces executable code from the intermediate representation. The back end usually optimizes to produce code that runs faster. The front end/back end distinction can also separate a parser that deals with source code from a compiler that generates and optimizes executable code. Some designs, such as GCC, offer multiple front end options (parsing different source languages) and multiple back end options (generating code for different target processors).[4]

Some graphical user interface (GUI) applications act as a thin front end for underlying command-line interface (CLI) programs, to save users from having to learn the CLI terminology and commands.

Web development as an example

Another way to understand the differences between the front end and back end is to consider the knowledge that each requires of a software developer. The example lists below focus on web development.

Front end

Back end

Front end and back end

API

The front end communicates with the back end through an API. In the case of web and mobile front ends, the API is often based on HTTP requests/responses. An API can also reduce the front-end processing load by using different back-end services for different front-end interfaces, such as in the "Back end For Front end" (BFF) pattern.[5]

Remove ads

Hardware definitions

In computer networking, front end can refer to hardware that connects devices to the network, provides security such as a DMZ, or converts data into a transportable format. Back end refers to hardware that handles and transports data within the network.

In processor design, front-end design can refer to the initial description of a circuit's behavior in a hardware description language such as Verilog, while back-end design can refer to the process of mapping that behavior to physical transistors on a die.<

Remove ads

See also

References

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads