Forskellen mellem klient-side og server-side programmering

To forretningsmænd bruger computer i serverrum

Webservere gør det muligt for websider at eksistere.

Billedkredit: Ryan McVay/Digital Vision/Getty Images

Hvis du kender lidt HTML, kan du oprette en funktionel webside, der informerer og underholder besøgende på webstedet. Grundlæggende websider kan være nyttige, men det kræver programmeringskode at lave avancerede websteder, der er interaktive, datadrevne og mere overbevisende. Den type programmeringssprog, du bruger, afhænger af dine webdesignmål. Før du bygger et websted, skal du lære forskellene mellem klient- og server-side programmering. De deler nogle funktioner, men de adskiller sig på væsentlige måder.

Kunde-side forklaret

Når du indtaster en URL i din browsers adresselinje, fungerer din computer som en klient, der anmoder om oplysninger fra en ekstern webserver. Al kode, filer, data og billeder, som du ser på websider, kommer fra eksterne servere, der sender dem til browsere. En browser samler ressourcer, den modtager, og genererer den webside, du ser. Simple websider må kun indeholde HTML-udsagn, tekst og billeder, mens mere komplekse kan udføre kode, der ligger i klientbrowseren eller på webserveren.

Dagens video

Grundlæggende programmering på klientsiden

Enhver kan oprette en webapp på klientsiden på få minutter ved at indsætte nogle få JavaScript-sætninger i et HTML-dokument og se det i en browser. JavaScript er det vigtigste scriptsprog på klientsiden, som webstedsejere bruger i deres webapps. Du kan bruge JavaScript til at få objekter til at flytte på en webside, validere formularinput, oprette specialeffekter, vise fejlmeddelelser og bede folk om oplysninger.

Yderligere fordele på klientsiden

Fordi browseren ikke behøver at kommunikere med en ekstern webserver for at udføre disse typer opgaver, kan kode på klientsiden udføre nogle opgaver hurtigere end kode på serversiden. For eksempel, når du klikker på en knap for at åbne en menu, kan kode på klientsiden køre den med det samme. Hvis server-side kode håndterede denne opgave, ville du skulle vente på, at browseren kommunikerer med serveren, før du ser menuen åben. Du behøver heller ikke installere speciel software på en webserver for at oprette og teste kode på klientsiden, da alle browsere kan køre kode på klientsiden.

Programmering på serversiden

Server-side teknologier omfatter PHP og Microsofts ASP.NET. Kode på serversiden kører på et websteds webserver i stedet for i en besøgendes browser. Hvis du besøger en webside, der bruger programmering på serversiden, ved du måske aldrig, at serveren er optaget af at udføre instruktioner, mens du ser websiden. Et godt eksempel på serversidebehandling er en ASP.NET-side, der giver dig mulighed for at ændre størrelsen på et billede. Når du har klikket på en knap for at uploade et billede til en webserver, ændrer koden på serveren billedets størrelse og sender det nye billede tilbage til din browser.

Yderligere serverside-fordele

Programmering på serversiden giver dig også mulighed for at gemme og hente data. Dette er vigtigt, når du ønsker at udføre opgaver som at gemme og hente login-oplysninger og give folk mulighed for at slå data op, der er gemt i en database. Disse data kan ligge på steder såsom en database eller en XML-fil på din webserver. Server-side behandling kan også hjælpe dig med at holde proprietær kode fortrolig. For eksempel kan du skrive PHP-kode, der udfører beregninger ved hjælp af proprietære salgsformler, som din virksomhed holder hemmelige. Fordi koden kører på din server, kan folk, der ser dine websider i en browser, ikke se koden.

Hybride webapplikationer

Mange webapps bruger en kombination af programmering på server- og klientsiden. For eksempel, mens scripts på klientsiden kan validere formularinput, er det klogt at bruge serversidekode til at validere det igen, efter at besøgende har indsendt formulardata til serveren. En af dine websider bruger muligvis et JavaScript-diasshow til at underholde folk og kode på serversiden til at behandle salgsordrer. Uanset hvilken teknologi du bruger, er det vigtigt at teste dine webapps grundigt, før du implementerer dem.