When I read about frontends, it always mentiones webpages. Can it be used in different contexts, e.g. desktop applications?


The term is generic and it tends to be used in n-tiered applications and refers to the UI.

It is not limited to n-tiered applications - in a single tiered application, if you have good separation of layers (say UI, business logic and infrastructure), you would still refer to the UI as the front-end.

So, you can use it whenever you are specifically talking about the UI - the interface that the end user uses.

  • Hm, I had a very different definition of front end. I'm wondering if there is a difference in interpretation between USA (front end = UI) and Europe (front end = part of a system which would be accessed by users). – Arseni Mourzenko Jan 5 '13 at 17:23
  • 3
    @MainMa - Don't know. For me a UI == part of a system which would be accessed by users... – Oded Jan 5 '13 at 17:31
  • 3
    @MainMa In my mind the UI encapsulates (or is) the part that the user accesses; so is indeed the front end whichever way you look at it. By definition a UI doesn't need to be graphical; UI != GUI – Fergus In London Jan 5 '13 at 17:39
  • For me UI means just one layer in the application(s) which run on the client side of a CS system. And those applications are often called the front end. – Doc Brown Jan 5 '13 at 22:36

The term is used both in design and development, including development of desktop software. The term targets a part of a system which is intended to be accessed by a customer or a user.

1. In web development:

It is not unusual to make the difference between:

  • Front end: the website or web application itself, as it is used by people outside the company,

  • Back end: the part of the web application which is used only by people with specific permissions and which allows them to execute administrative tasks.

Note: moderators would be qualified as people outside the company, so controls used by moderators are part of front end.


When services are involved, front end would be everything directly accessible by the users/customers. A desktop application installed by the user and which connects to a bunch of web services would be qualified as front end.

Services themselves, in this context, would be excluded from the front end.

Note: if a web service is the actual product, it may be qualified as a front end. For example, Twilio web service is the front end.


Wikipedia has an article that answers this question directly, front and back ends.

In the context of compilers:

  • Front end validates the syntax and semantics then outputs some intermediate representation, such as an AST.
  • Back end generates the assembly or translated code.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.