Annonser

Serverspråk

Vad är serverspråksprogrammering? Vad är klientspråksprogrammering?

För att kunna förstå vad som är vad och skillnaden dem i emellan börjar jag med några enkla förklaringar till vad klient och server är för någonting.

Definition av klient och server

Server
En dator som delar ut information till andra datorer (som då agerar klienter). En server servar andra datorer med information.
Klient
Den dator som hämtar information från en annan dator (som då agerar server).
Webserver
En programvara installerad på en dator (server) som har som uppgift att servera webbsidor till den dator (klient) som skickar en förfrågan.

Exempel: Då du är ute och surfar på aftonbladets webbplats är din dator klient och den dator som aftonbladets webbserver körs på är server.

Vad är programmeringsspråk?

Koder som skrivs efter vissa regler kan tolkas av programvara installerad på den dator koden körs på. I webbsammanhang är det intressant att veta på vilken dator som koden tolkas; på servern eller klienten.

Klientprogrammeringsspråk

Exempel på språk som tolkas av klienten är HTML, CSS, JavaScript, Flash och Java Applets. Dessa tolkas i klientens (den som besöker din hemsida) webbläsare och en webbprogrammerare är alltså beroende av vilken webbläsare klienten kör och dennes inställningar för hur koden som webbprogrammeraren kodat tolkas. Har t.ex. klienten inte samma webbläsare som du eller om klienten t.ex. har javascript avstängt så kommer inte webbsidan att fungera på önskat sätt hos denne klient. Detta är en anledning till att inte göra sin webbplats beroende av javascript för att fungera.

Du kan inte skriva kod som tolkas av klienten som sparar textfiler eller använder en databas.

All kod som skickas till klienten måste vara kod som klienten kan tolka och alla webbsidor måste bestå av vanlig HTML-kod oavsett vilket språk du eventuellt använder på servern. Du kan själv kolla detta genom att "Visa källa" i din webbläsare. Där ser du vanlig HTML-kod oavsett om webbplatsen har sidor kodade i något serverspråk, t.ex. PHP.

Dessutom kan du inte spara saker i textfiler eller databaser med HTML eller javascript eftersom filerna körs på klientens dator. Kan man lägga viss funktionalitet i javascript på klienten är det bra eftersom då klienten får göra jobbet medan din server får "vila". Dock måste du alltid ändå kontrollera allt på serversidan eftersom klienten kan ha stängt av javascript.

Serverprogrammeringsspråk

Exempel på språk som tolkas av servern är PHP, JSP, ASP och CGI.

Eftersom dessa språk tolkas av servern så måste programvara som kan tolka koden vara installerad på servern. Därför är man beroende av vad sitt webbhotell har stöd för när man vill använda något serverspråk.

Med ett serverspråk kan du programmera det mesta. Du kan använda databaser, textfiler, använda sessioner och bygga avancerade lösningar som t.ex. ett statistiksystem som jag gjort ;). Glöm dock inte bort att det som skickas till klienten (webbläsaren) fortfarande är HTML, men att du på serversidan kan generera denna HTML dynamiskt genom att t.ex. hämta olika saker från en databas.

Olika serverspråk

PHP

PHP är ett språk som går att köra på alla webbservrar, men används oftast på Apache webbservrar. Apache körs vanligen på Linux-datorer och Unix-datorer men går även att köra på Windows. PHP har funktioner som fungerar ihop med MySQL-databaser så vill du använda en databas till PHP är MySQL ett bra val.

JSP (Java Server Pages)

JSP körs ofta på webbservern vid namn Tomcat som i sin tur oftast körs på Linux och Unix-datorer, men det finns windows-alternativ som fungerar bra också. JSP är inte direkt något språk utan det är Java som som är serverspråket och som logiken skrivs i. Java är utvecklat av Sun och JavaServer Faces är den senaste tekniken för utveckling av webblösningar. Den är konkurrerande med Microsofts .NET, se nedan. Du kan egentligen välja vilken databas du vill. De jag provat är MySQL, PostgreSQL och Oracle.

ASP

ASP används på windows-servrar, IIS och det brukar användas ihop med Microsoft Access databaser, Oracle eller MySQL. ASP kan INTE köras på Linux eller Unix utan här är man bunden till en windowsserver. ASP är inget språk i sig utan det är VB (Visual Basic) som är det man brukar använda sig av.

ASP.NET

ASP.NET är Microsofts senaste webbprogrammeringslösning. ASP.NET är inget språk utan det du kodar i är vanligen C# eller VB.NET och detta kodas i ramverket .NET. De databaser som kan användas är de flesta men vill man ha minst problem är SQL Server eller Oracle att föredra. används på windows-servrar, IIS och ASP.NET kräver att stöd för .NET installerat på webbservern och det är windowsserver som gäller. Det finns även .NET utvecklat av andra än Microsoft som är utvecklat till andra plattformar (FreeBSD Unix) men kvaliteten på det är inte detsamma som Microsofts, än så länge i alla fall.

CGI

CGI står för Common Gateway Interface, och är gränssnittet mellan webbservern och programmen som körs. Ett språk som är vanligt förekommande att använda med CGI är Perl.

Tips

Om du funderar på att börja koda i något av dessa språk så måste du först ta reda på vilka språk som den webbserver du har din webbsida på stödjer. Många webbhotell stödjer inte serverspråk överhuvudtaget eller endast några få utvalda funktioner.
Jag skulle rekommendera att börja med PHP för det är ganska enkelt och lätt att få tag webbhotell som stödjer. Exempel på gratis webbhotell som stöder PHP är Spray Tripod. Tyvärr innehåller det väldigt mycket reklam men den är snabb och fungerar oftast. Jag rekommenderar att man köper ett webbhotell om man vill satsa på PHP. Du kan läsa mer på sidan om webbhotell.

 

11 kommentarer | Läs/skriv kommentarer