Vergleich von Backend und Frontend
Wenn wir über Computerprogrammierung, Code oder Webentwicklung sprechen, ist uns der Fachjargon nicht immer sehr vertraut, aber bestimmte Ausdrücke kommen regelmässig vor. «Backend» und «Frontend» gehören dazu, zwei Begriffe, die man immer öfter hört, aber was genau ist das? Was repräsentiert es und wozu dient es?
Backend und Frontend gibt es überall
In der IT-Entwicklung entwickeln wir Anwendungen.
Diese Anwendungen können die Form einer Website (Beispiel: die Website der Digital-Agentur Swiss Tomato), einer Webanwendung (Beispiel: Google Drive) und einer mobilen Anwendung bzw. App (Beispiel: Waze) annehmen.
Um zu funktionieren, benötigt eine Anwendung oder Website sehr oft das, was in der Fachsprache als Backend und Frontend bezeichnet wird. Oft liest man: «Das Frontend ist das, was der Endbenutzer (Sie) sieht, und das Backend ist das, was wir nicht sehen», aber was bedeutet das?
Backend und Frontend in sehr vereinfachter Form
Zum besseren Verständnis dieser beiden Konzepte wenden wir uns für einen Moment von den Fachbegriffen ab und nehmen ein Beispiel aus dem Alltag: Postdienste.
Stellen Sie sich folgende Situation vor: Ich muss einen Brief an eine Firma senden, und diese Firma muss mir einen Brief zurücksenden, um auf meine Anfrage zu antworten.
In diesem Beispiel repräsentiert der Brief, den ich senden muss, meine Suche nach Informationen auf einer Website (oder in einer Webanwendung).
Nun schlüsseln wir die verschiedenen auf mein Senden des Briefes erfolgenden Aktionen und Schritte vom Senden bis zum Empfang der Antwort der Firma auf meine Anfrage auf.
Während der verschiedenen Phasen sind mehrere Akteure beteiligt:
- der Postbote
- der Briefkasten
- das Sortierzentrum
- der Zähler
- die Schubladen, in denen die Post aufbewahrt wird
- der Brief
Zerlegen wir nun den Vorgang in Schritte:
Wenn ich meinen Brief per Post sende, sind alle physischen Interaktionen, die ich habe, während die Post in meinen Händen ist, der Frontend-Teil des Vorgangs.
Der gesamte Routing- und Verarbeitungsteil meines Briefs (an dem ich nicht direkt beteiligt bin) hingegen repräsentiert den Backend-Teil des Vorgangs.
Jetzt sollten Sie den oben zitierten Satz «Die Vorderseite ist das, was wir sehen, und die Rückseite ist das, was wir nicht sehen» besser verstehen: Wir können den Brief sehen, wenn wir ihn aufgeben, wir können den Briefkasten und den Postboten sehen; es stellt den Frontend-Teil dar. Wenn aber der Brief sortiert, gespeichert, in der Routing-Phase usw. ist, was wir nicht sehen, repräsentiert das den Backend-Teil der Organisation.
Und konkret für eine Anwendung oder eine Website
Die gleichen Konzepte finden sich im Lebenszyklus einer Website oder einer Anwendung:
Ich sehe die Website, die ich mit gerade ansehe. Um mit der Website zu interagieren, klicke ich auf Links oder fülle Formulare aus, die ich sehe – das ist das Frontend.
Sobald meine Klickaktion abgeschlossen ist, arbeitet meine Website oder Anwendung unabhängig: Sie empfängt meine Anfrage, sucht nach den von mir angeforderten Informationen (dazu konsultiert sie die Datenbank und analysiert / sichert die Daten) und sendet sie dann an mich zurück – das ist der Backend-Teil.
Sobald das Backend die Informationen zurücksendet, kann ich sie erneut ansehen und damit interagieren – ich bin zurück im Frontend.
Hier erkennen wir, dass diese beiden Facetten einer Website oder einer Anwendung essenziell sind (genau wie das Sortierzentrum und der Postbote bei den Postdiensten), dass einer nicht ohne den anderen auskommt und dass es, wie beim Postdienst, nicht dieselbe Person ist, die die Post ausliefert und sortiert.
Genauso benötigen wir bei der Entwicklung einer Anwendung oder einer Website einen Frontend-Entwickler und einen Backend-Entwickler.
Und welche Rollen spielen die «Sprachen» in all dem?
Sie können Ihre Post mit dem Unternehmen Post AG (La Poste) senden, aber Sie können auch eine andere Firma auswählen, wie z. B. DHL, Fedex usw. Jedes Unternehmen hat seine eigenen Services, Frontend- und Backend-Methoden.
Nun, in der IT-Entwicklung ist es dasselbe, aber wir nennen es Sprachen. Zum Entwickeln im Backend können Sie beispielsweise PHP, Java, Ruby usw. Verwenden… Zum Entwickeln des Frontend-Teils nutzen wir hauptsächlich JavaScript, HTML oder CSS.
Treffen Sie unsere Experten für Webdesign in Zürich und Genf und unsere App-Developer bei Swiss Tomato und entdecken Sie, wie Verbesserungen in Ihrer digitalen Aufstellung ihr Unternehmen verändern können!