This is the secret behind how the web today runs so efficiently and offers you more variety in the types of applications that you can run. Today, web development is broken into two parts the first being the front and which runs on the client commonly referred to as the user. The back end is run on the server.
With the increased power that is now on the client side, more and more of the functionality that used to be run on the server side is now being offloaded to the desktops and handhelds.
So, today you’re going to learn a little bit about what the front end does as well as the back end.
We’re going to first look at the main differences between them, then we will discussthe back end and let you know what languages are needed to support it, will finish by looking at the front end and the various languages used to create the GUI’s that you see on your screen and that let you talk to the applications and web pages by a mouse and keyboard.
|Criteria||Back end||Front end|
|Where the code runs||In the server||in the user’s computer|
|Have access to database||Yes||no|
|Speed||Depend on the network speed but relatively slow||Fast|
The back and is where the server lives. Here you can find the programs the code and all the mechanisms that make the magic happen. The server processes the request from the client side (i.e. the users) and replies to them. This means that when a user is doing something on a website like pressing a button, this action sends a request to the server. Depending on what the button is supposed to do, the server takes appropriate action and sends the appropriate responses and screenshots.
For example, the user wishes to click to the “Contact Us” page on a website. To do so he uses his mouse and clicks on the link. The user’s computer sends it as a request to the server, which basically says, “Show me the ‘Contact Us’ page”. The server responds by sending the web page that was requested. This actually may be many transactions to perform the operation. But, all we need to know is that the page appears as requested.
To create a back end that runs on the server-side, you need to use one of the languages designed for this.
The front end collects information that the user inputs via keyboard or mouse and sends it to the server for the back and to process. When the server-side code is sending information to the user’s computer, it is also sending the code needed to perform various functions on the client-side as well.
So, some of the actions are being done on the server as well as being down on the client itself. This separates today’s handhelds, laptops, and desktops from the days of the dumb terminals where everything had to be processed on the server-side.
This cuts down on response time and gets your job done faster. Today’s programmers are attempting to offload to the clients, as they become more powerful, more of the activities that used to be done exclusively on the server-side. They now are now being done on the client-side.
This is why you see a proliferation of apps appearing, as the servers are becoming more of a repository of information rather than execution of code. This improves the user’s experience and makes everything happen faster. The latest generation of iPhones is an example of where the majority of processing is being done at the handheld level rather than on the server itself.