Friday, July 16, 2010

Client VS Server Side

We have all heard the guru's talking while taking lunch, but you may have not understood. So here is what is being said: "Oh, well that's all client side so that's Joe's job." or "That's not my business it's server side." or even, "It doesn't work that way, you'd have to do that with a server application." Did you kind of play along and act like you knew? I did once, a lot time ago, I swear... alright maybe I didn't but I've read a lot of books on the subject the first time I heard the term server side, the guy that said it couldn't even answer my questions, or at least he didn't want to. Most books use visuals, but I will do my best to explain it the simple way.

CLIENT SIDE
Everything you see on your browser page is client side. Usually it means your computer. That is your computer gets send information in some form of code or another and your computer (the client) reads it and displays it on your screen. So a client side is pretty much anything that is rendered processed and put on your computer. When you purchase a game your purchasing client side software. That is why so many games are called clients. Some games amazingly enough have more than 1 client. Each one giving different graphics allowing multiple people to play with newer or older graphics cards. Or even change what things on their screen look like to them. I've seen people "hack" their clients to do little things like change the outfit of a character they created. Or make an item look better to them. All this is only on their computer, and it does not effect the other players. When you have a Client-Server Application or Game it means there is a server somewhere making the calls, calculating the numbers and returning them to your client.

SERVER SIDE
We all have heard of servers. This is the place where information is stored in huge databases to be processed by huge processors and then returned to multiple users. Say your playing a game on the internet with a friend and you both start attacking the same opponent. You both are doing damage to that opponent but who adds the numbers up and tells you when he's dead? The server! The server gets your damage and then gets your friends and adds them up and subtracts them from the creatures available points of damage (also called hit points) and when it reaches zero the creature dies on your screen. Servers are used for many purposes. The most important thing to remember is a server is to hold large amounts of data to make it convenient to access by many different people. For example this website is stored on a server, and anytime someone wants to access it they can. What happens is your computer says hey I want that info from that server. A program on the server goes, alright here you go. The client gets the information, and the client side program goes alright this is how he wants to see the information.

It's all that simple. I will revise this later when I find more time, I was half awake while writing it, but I believe it's all here. Just a draft really.

No comments: