Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Web-App oder native App

Nach dieser Lektion: Ich kann anhand von Anforderungen begründen, ob eine Web-App oder eine native App besser passt.

Lektion, 55 Min.1 BefehlLab für das mobile Web: eine responsive, installierbare Web-App im Browser bauen

Web-App oder native App: was passt besser?

Eine Web-App läuft im Browser und wird über eine Adresse aufgerufen. Eine native App wird für ein Betriebssystem gebaut und aus einem App-Store installiert. Wer beide Wege kennt, wählt für ein Projekt den, der zu den Anforderungen passt, statt aus Gewohnheit.

Dieses Modul lehrt den Weg über das Web. Werkzeuge für native Apps, etwa ein Emulator oder ein Store, gehören nicht dazu, und das Lab hat sie nicht.

Am Ende dieser Lektion

Notiz

Ich kann anhand von Anforderungen begründen, ob eine Web-App oder eine native App besser passt.

Schlüsselwörter

BegriffWas er bedeutet
Native Appeine App, die für ein Betriebssystem gebaut und aus einem Store installiert wird
Web-Appeine App aus Webseiten, die im Browser läuft und über eine Adresse startet
Berechtigungdie Erlaubnis, eine Funktion des Geräts zu nutzen, etwa den Standort
Anforderungetwas, das die App können muss
Verteilungder Weg, auf dem die App zu den Nutzenden kommt, etwa ein Store oder ein Link
Abwägungder Vergleich von Vor- und Nachteilen vor einer Entscheidung

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Berechtigungen: was darf die App auf dem Gerät?

Eine native App kann tief auf das Gerät zugreifen, etwa auf Sensoren, Kontakte oder den Standort im Hintergrund. Das Betriebssystem fragt die Nutzenden vorher nach der Erlaubnis.

Eine Web-App fragt über den Browser, wenn sie eine Funktion braucht. Welche Funktionen sie nutzen darf, hängt vom Browser und vom Telefon ab und ändert sich mit der Zeit.

Akkuverbrauch und Geschwindigkeit hängen vom Ziel ab

Native Apps laufen näher am Gerät. Bei sehr schneller Grafik oder langen Aufgaben im Hintergrund haben sie oft einen Vorteil.

Für Formulare, Listen und Texte reicht eine Web-App meist aus. Messen Sie, bevor Sie entscheiden: Ein Gefühl für Tempo täuscht oft.

Verteilung: ein Store oder ein Link

Eine native App kommt über einen Store zu den Nutzenden. Das schafft Sichtbarkeit, verlangt aber eine Prüfung durch den Betreiber des Stores und für jede Plattform ein eigenes Paket.

Eine Web-App erreichen Nutzende mit einem Link. Ein Update ist sofort da, ohne Installation. Dafür fehlt der Auftritt im Store.

Ein Vergleich: Web-App und native App

MerkmalWeb-AppNative App
Codeein Code für alle Geräteje ein Code pro Plattform
Startüber einen Linknach der Installation aus dem Store
Updatesofort, ohne Installationneue Version über den Store
Gerätezugriffje nach Browser begrenzttief, mit Erlaubnis
Hintergrundbegrenztweitgehend möglich
Sichtbarkeitüber Suche und Linksüber den Store

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Das Lab zeigt, wie klein eine Web-App ist

Das Lab hat keinen Emulator und keinen Store. Es zeigt die Web-App als Dateien im Ordner app. Der Befehl wc -c zählt die Bytes jeder Datei und am Ende die Summe.

Die fünf Textdateien der App wiegen zusammen 5185 Bytes, also gut fünf Kilobyte. Die Zahl steht in der letzten Zeile der Ausgabe, hinter dem Wort total.

Die Größe der Dateien der Web-App zählen

Befehl
docker exec jupyter wc -c app/index.html app/style.css app/app.js app/sw.js app/manifest.webmanifest

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

So entscheiden Sie: Anforderungen zählen

Schreiben Sie die Anforderungen des Projekts auf. Ordnen Sie jede der Seite zu, für die sie spricht: Web oder nativ.

Eine Anforderung kann auch ein Ausschluss sein. Verlangt das Projekt etwa dauerhafte Ortung im Hintergrund, entscheidet das allein für die native App.

Punkte für beide Seiten zählen

Code: python
fuer_nativ = ["Hintergrund-Ortung", "schnelle 3D-Grafik"]
fuer_web = ["Start über einen Link", "kleines Budget", "Update ohne Installation"]

nativ = len(fuer_nativ)
web = len(fuer_web)
print("Punkte nativ:", nativ)
print("Punkte web:", web)
if web > nativ:
    print("Empfehlung: Web-App")
elif nativ > web:
    print("Empfehlung: native App")
else:
    print("Empfehlung: beides prüfen")
# Streichen Sie "kleines Budget" und starten Sie noch einmal.

Ein Beispiel: drei Projekte und ihre Wahl

ProjektWichtigste AnforderungenWahl
Mensaplan der HochschuleStart über einen Link, täglich neue Daten, kleines BudgetWeb-App
Lauf-App mit AufzeichnungOrtung im Hintergrund, Sensoren, Akkunative App
Fahrplan mit Offline-KarteOffline, ein Code, Updates ohne StoreWeb-App, mit Prüfung

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein häufiger Fehler

Warnung

Viele denken, eine native App sei immer besser. Für viele Projekte genügt eine Web-App und spart Zeit und Geld. Umgekehrt ist eine Web-App nicht immer genug. Entscheiden Sie nach den Anforderungen, nicht nach der Mode.

Über dieses Lab und seinen Quellcode: Lab für das mobile Web: eine responsive, installierbare Web-App im Browser bauen

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.