Client (computing)

A client ( German "customer", and client- side application or client application) means a computer program that runs on the user's computer. They are integrated into a rule in a client-server communication.

The counterpart to the client, the server-side applications.

Client-side applications

An important group of client-side applications, the browser, such as Firefox, Microsoft Internet Explorer or Safari, which use the HTTP protocol for data communication with a web server to query from this data and then render it to the user.

Another example is e -mail clients: please contact to an e -mail server to fetch emails from him and send him. The client does not have to be constantly in use or connected to a network, because the mail server receives incoming e -mails.

The Ajax - concept found in client-side applications that are embedded in web pages, a growing importance. Other client applications that have their own proprietary client-server protocols are, for example, or the Citrix client SAP.

Between a client and a server there for data transfer and the interaction protocol defined that a request / response scheme is usually followed. A client-side programming, the request / response scheme can be interrupted by certain functions such as short-term responses to user interaction directly on the client side performs without triggering an Client-/Server-Rundlauf. It often involves a recursive concept. In a client application (eg web browser) is running a second application ( for example, a JavaScript in the current HTML page ).

Most often occur client-side applications in a mixed form to a server-side application.

A programming language commonly used in this area to enable JavaScript. The source code is incorporated into the HTML page, and interpreted by the browser. An alternative example, provides the proprietary language VBScript the software manufacturer Microsoft.

Client-side vs.. server-side state saving

It is important in the context, as the context of a user session can be saved. For example, HTTP is stateless ( stateless ), so you can remember any data between two data requests to the server principle. A client-side application can use the cookie concept to store information on the client side, which are read by a client-side scripts consequence at a later point in time. However, cookies do not offer any form of data security and can be read, for example, non-application of Spyware. This functional gap is partially closed by the concept of a server-side session management.

The stateless Client-/Server-Communication itself thus becomes a system in which the data session can be maintained on the server a plurality of data requirements. This will be possible (eg password protected ) sessions.


  • To fix some problems ( validity of form inputs ) can be dispensed with the cooperation of the Web server.
  • Allowing a dialog with the user.
  • The aesthetics of the website can be improved (eg changing content and presentation depending on the mouse position ).


  • The source code is visible and accessible to the user. This may be undesirable under certain circumstances.

Types of clients

A distinction is conventional fat client (also rich or smart clients) and thin clients (even lean or slim clients).


As clients are also referred to all those computers in a network, in contrast to the servers that provide no services.

  • IT architecture
  • Web Development
  • Software Architecture