Computer scienceIn software design, the front-end is the part of a software system that interacts directly with the user, and the back-end comprises the components that process the output from the front-end. The separation of software systems into "front-ends" and "back-ends" is an abstraction that serves to keep the different parts of the system separated. Many programs are divided conceptually into front and back-ends, but in most cases, the "back-end" is hidden from the user. However, sometimes programs are written which serve simply as a front-end to another, already existing program, such as a graphical user interface (GUI) which is built on top of a command-line interface. This type of front-end is common in Unix GUIs, where individual programs are developed as many small programs, able to run independently or together. See graphical (desktop environment) and semi-graphical (such as ncurses) front-ends. Some common methods for interacting with computers can be conceptualized in terms of a "front-end" and "back-end". For example, a graphical file manager, such as Windows Explorer, can be thought of as a front-end to the computer's file system. At the OS level, the concept of a graphical user interface (GUI) can be thought of as a front-end for the system (for general users), while the command line or "TUI" is sufficiently technical to be considered as a back-end. This often applies to software packages as well, which may have both graphical interfaces (front) as well as command-line scripts (back). Another common use for the term front-end is for network application front-end hardware. This is network hardware which can optimize or protect network traffic. It is called application front-end hardware because it is placed on the network's front-end. Meaning that network traffic passes through the application front-end hardware before any other part of the network. In compilers, the front-end translates a computer programming source language into an intermediate representation, and the back-end works with the internal representation to produce code in a computer output language. The back-end usually optimizes to produce code that runs faster. The front-end/back-end distinction can spearate the parser section that deals with source code and the back-end that does code generation and optimization; in some designs (such as GNU) there may in fact be multiple back-ends using the same front end. Each target processor would have its own back end but use the same front end. 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. TechnologyIn radio receivers, the 'front-end' consists of the package containing the feed horn and wave guide, as well as the antennas required to detect the radio signal. The 'back-end' refers to the amplification and filtering systems that refine and edit the signal before presenting it to the user. In electronic design automation, front-end stages of the design cycle are logical and electrical design (e.g., schematic capture, logic synthesis). Sometimes floorplanning is also considered front-end. back-end are place and route, custom layout design and physical verification (design rule checking, layout versus schematic, parasitics extraction). BusinessFront-end and back-end have several meanings in financial situations. For instance, transactions to purchase mutual funds can have a front-end sales load that investors pay when they purchase fund shares and/or a back-end or deferred sales load investors pay when they redeem their shares.[1] Other uses of these terms in business include:
SportsIn curling, the first two members of the team's delivery rotation, called the "lead" and "second," are together referred to as the "front-end" of the team. The latter two members in the delivery rotation, called the "third" (or "vice," "mate") and "skip" are together referred to as the "back-end." See alsoReferences
| |