Web-Backend-basierte Softwareanwendungen sind wie Eisberge. Die Programmierung von mobilen Apps, wie z.B. iOS-Programmierung oder Android-Programmierung, bezieht sich auf die direkte Interaktion mit dem Endbenutzer. Dies wird als “Front-End-Programmierung” bezeichnet. Dieser Teil der Anwendung ist für den Benutzer sichtbar. Der grösste Teil bleibt aber unsichtbar. Das ist das schwer fassbare und mystische “Backend”. In den meisten wichtigen Anwendungen gibt es viel mehr Backend-Code als Frontend-Code.
Komplexe Apps haben viele Arten von Logik, die im Hintergrund ablaufen und sie funktionieren lassen. Dazu müssen Daten gespeichert und abgerufen werden. Geschäftslogik und Regeln müssen eingehalten und Ergebnisse berechnet werden. All dies geschieht hinter den Kulissen. Der Backend-Entwickler ist derjenige, der dies alles ermöglicht.
Ein Web-Backend ist mit dem Web-Frontend (App oder Website) in Form einer API verknüpft. Das Web-Backend wird auf einem Server ausgeführt und stellt Daten zur Verfügung, beziehungsweise erwartet bei manchen Aufrufen Parameter oder Daten zum abspeichern. Moderne Web-Backends nutzen dazu eine sogenannte Rest-API. Es ist mit einer normalen Webseite zu Vergleichen. Jede Funktion im Backend hat, wie eine Webseite, eine bestimmte Web-Adresse, auch Endpoint genannt, welche von der App aufgerufen wird. Es ist ähnlich, wie wenn Sie im Web-Browser eine URL eingeben. Das Backend gibt dann anstelle des HTML entweder JSON oder XML zurück. Im Vergleich zu HTML enthält JSON oder XML keine Layout-Informationen und ist besser strukturiert und “maschinenlesbar”. Bestenfalls bekommt die App die Daten in einer Struktur, welche sie so gleich benutzen kann. Dadurch entfallen umständliche und zeitintensive Konvertierungen und die App ist dadurch performanter
Da Web-Backends meistens Daten speichern und verarbeiten ist i.d.R. eine Datenbank mit im Spiel. Die wesentliche Aufgabe einer Datenbank ist es, grosse Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern. Zudem stellt eine Datenbank benötigte Teilmengen in unterschiedlichen, bedarfsgerechten Darstellungsformen für Benutzer und Anwendungsprogramme bereit.
Die gebräuchlichste Form einer Datenbank ist eine relationale Datenbank. Die Struktur der Daten wird durch ein Datenbankmodell festgelegt. Die Anfragen zur Datenbank erfolgen in der Regel in Form der Datenbank-Sprache SQL.
Die meistbenutzten relationalen Datenbanken für Web-Backends sind MySQL, MariaDB, Oracle, Microsoft SQL Server oder PostgreSQL.
NoSQL (englisch für Not only SQL deutsch: „Nicht nur SQL“) bezeichnet Datenbanken, die einen nicht-relationalen Ansatz verfolgen. Sie brechen damit mit der langen Geschichte relationaler Datenbanken. Diese Datenspeicher benötigen keine festgelegten Tabellenschemata und versuchen Joins zu vermeiden. Sie skalieren dabei horizontal. Im akademischen Umfeld werden sie häufig als „strukturierte Datenspeicher“ (engl. structured storage) bezeichnet.
Bekannte Implementierungen sind Riak, Apache Cassandra, CouchDB,MongoDB und Redis.
Während es für native Apps nur wenige Programmiersprachen gibt, kann ein Web-Backend in vielen Programmiersprachen entwickelt werden. Die wichtigsten sind:
Ein grosser Teil unserer Entwickler war schon vor der Gründung der Applie AG in einem Team, welches diverse Web-Anwendungen realisierte, wie z.B. das Web-Cloud-Management System Holdeed. Dadurch haben wir mehr als 10 Jahre Erfahrung in der Web-Entwicklung.
Ein weiteres Beispiel ist das von uns entwickelte Liga-Backend, welches während der Fussball-WM in Spitzenzeiten über 10.000 Zugriffe pro Sekunde verarbeitete.
Möchten auch Sie ein schnelles und stabiles Web-Backend von uns entwickelt haben, dann treten Sie mit uns in Kontakt.