Ich habe Production-Apps in Swift, in Kotlin, in Flutter gebaut und viel in React Native geerbt. Das ist kein Benchmark-Post. Es ist die Antwort, die ich Foundern gebe, die diese Woche entscheiden müssen und das nicht zwei Jahre lang überdenken möchten.
Die kurze Version
- Flutter, wenn das Produkt beide Plattformen und gemeinsames Verhalten benötigt und ein Team sowohl die plattformspezifischen Integrationen als auch die gemeinsame Benutzeroberfläche betreuen kann.
- Native Entwicklung, wenn bestimmte iOS- oder Android-Funktionen, die Systemintegration oder plattformspezifisches Verhalten für das Produkt zentral sind und Sie beide Clients personell besetzen können.
- React Native, wenn Sie bereits ein React-Team haben und die JavaScript- sowie nativen Abhängigkeiten zuverlässig pflegen können. Planen Sie Upgrade- und Integrationsarbeit in die Entscheidung ein.
Alles unten ist warum.
Native (Swift / Kotlin)
Zwei Apps für zwei Plattformen bedeuten getrennte Implementierungs- und Release-Arbeit, aber nicht jede Projektaufgabe verdoppelt sich. Produktentscheidungen, ein großer Teil des Designs und ein gemeinsames Backend können für beide Apps genutzt werden. Lassen Sie sich von den Anbietern aufschlüsseln, welche Aufgaben gemeinsam erledigt und welche separat entwickelt und getestet werden. Native App-Entwicklung ist sinnvoll, wenn der direkte Zugriff auf Plattformfunktionen Teil der Anforderungen ist.
Was Sie erhalten: direkten Zugriff auf die Plattform-SDKs, die Ihre Zielgeräte und unterstützten Betriebssystemversionen bieten. Widgets, App Clips, Live Activities, CarPlay, Wear sowie Kamera- und ML-Integrationen haben jeweils eigene Anforderungen. Prüfen Sie weiterhin Verfügbarkeit, Berechtigungen (Entitlements), Geräteverhalten und Release-Beschränkungen; native Entwicklung nimmt Ihnen diese Arbeit nicht ab.
Wählen Sie es wenn: die App das Produkt ist und seine Qualität der Unterschied; Sie sind in einer Kategorie wo Plattform-Features Retention fahren; Sie brauchen absolut beste Performance und Memory-Verhalten; oder Sie sind groß genug, dass zwei Spezialist-Teams normal sind.
Flutter
Flutter verwendet einen eigenen Rendering-Ansatz, statt jedes native UI-Steuerelement einzubetten. Dadurch lässt sich eine konsistente, individuelle Oberfläche leichter teilen. Plattformkonventionen und Barrierefreiheit müssen dennoch für jedes Betriebssystem bewusst gestaltet und getestet werden. Die Seite zur Flutter-Entwicklung erläutert den Umfang für Umsetzung, Gerätetests und Übergabe.
Was Sie erhalten: gemeinsame Anwendungslogik und einen großen Teil der Benutzeroberfläche auf beiden Plattformen. Eine gemeinsame Fehlerbehebung kann beiden Apps zugutekommen. Native Integrationen, Barrierefreiheit und Betriebssystemverhalten müssen dennoch plattformspezifisch getestet werden. Das passt zu designorientierten Produkten mit bewusst gemeinsamer Oberfläche.
Was es kostet: Sie sind eine Schicht entfernt von neuen OS-Features, und größere Binaries. Alles tief Plattform-Spezifische bedeutet einen Platform Channel zu schreiben — was okay ist, und auch native Code ist, den Sie jetzt warten.
Wählen Sie es wenn: zwei Plattformen sind wichtig, das Budget ist echt aber endlich, die UI ist Custom, und Sie möchten lieber ein starkes Team statt zwei dünne.
React Native
Ein React-Team kann mit React Native schnell produktiv werden. Vorhandener Webcode lässt sich jedoch nicht automatisch als mobile Benutzeroberfläche wiederverwenden. Prüfen Sie native Module, Paketpflege, Upgrade-Pfad und welche Entwickler nach dem Launch dafür verantwortlich sind.
Was es kostet: die Abhängigkeitsfläche. Eine React Native App ist Ihre plus einen langen Tail von Community-Packages, und ihre Wartung ist nicht Ihre Entscheidung. Upgrades sind die häufigste Quelle ungeplanter Arbeit, die ich in geerbten RN-Codebasen sehe.
Wählen Sie es wenn: Sie ein React-Team und ein Web-Produkt zum Teilen von Logik haben. Wenn Sie frisch für es einstellen müssen, ist Flutter üblicherweise die bessere Wette 2026.
Der Kosten-Vergleich, konkret
Eine aussagekräftige Schätzung vergleicht in jedem Stack dieselben Abläufe und Abnahmekriterien. Bitten Sie alle Anbieter, gemeinsame Produkt- und Backend-Arbeit von Plattform-Clients, Integrationen, Tests, Release-Vorbereitung und laufender Wartung zu trennen. Der Vergleich sollte die Arbeit sichtbar machen; ein Framework-Multiplikator verschleiert sie.
- Ein Briefing festlegen. Listen Sie für jede Schätzung dieselben Nutzerabläufe, unterstützten Betriebssystemversionen, Geräte und Integrationen auf. Führen Sie optionale Funktionen separat auf.
- Gemeinsame Arbeit von Client-Arbeit trennen. Fragen Sie nach Design-, Backend- und Produktaufgaben sowie nach der iOS- und Android-Implementierung, Plattformintegration und Gerätetests.
- Release-Verantwortung einpreisen. Berücksichtigen Sie Signierung, Store-Einreichung, Crash-Monitoring, Updates für Betriebssystemkompatibilität und die verantwortliche Person, falls ein Update ein Plugin oder natives Modul beschädigt.
- Zwei Plattformen mit einem Start auf einer Plattform vergleichen. Falls das Budget einen gestaffelten Start erzwingt, halten Sie fest, welche Nutzer und Funktionen auf die zweite Plattform warten und welche Nachweise die nächste Investition auslösen.
Bei der Wartung wird die Kostenstruktur deutlicher. Zählen Sie, wie viele Entwickler jeden Client ausliefern können, welche Release-Prüfungen Sie wiederholen und wie oft Abhängigkeiten oder Änderungen am Betriebssystem plattformspezifische Arbeit erfordern. Halten Sie diese Annahmen neben der Bauschätzung fest, statt Wartung als Prozentsatz des ursprünglichen Angebots anzusetzen.
Die Einstellungs-Realität, die niemand preist
Die Verfügbarkeit von Entwicklern hängt von Erfahrung, Standort, Vergütung und den technischen Anforderungen des Produkts ab. Prüfen Sie vor der Wahl des Technologie-Stacks, welche Kandidaten Sie tatsächlich erreichen können und welche Erfahrung für die nativen Integrationen nötig ist. Ein passender Stack, für den Sie keine Mitarbeiter finden, ist ein Lieferrisiko.
Das ist ein echter Input zur Entscheidung und es erscheint fast niemals im technischen Vergleich. Die beste Architektur, die Sie nicht besetzen können, ist schlechter als die gute Architektur, die Sie können.
Wenn Sie bereits drauf sind und über Wechsel nachdenken
Eine Neuentwicklung nimmt Zeit in Anspruch, die sonst in neue Produktarbeit fließen könnte. Vergleichen Sie sie deshalb mit einer Reparatur oder schrittweisen Migration, bevor Sie sich festlegen. Sie lässt sich leichter rechtfertigen, wenn:
- Sie können physisch nicht für den aktuellen Stack zu irgendeinem sinnvollen Preis einstellen.
- Eine Plattform-Anforderung wird die Arbeit ohnehin innerhalb von zwölf Monaten fahren.
- Die existierende Codebase versagt die Basics — siehe die Audit-Checkliste — in welchem Fall Sie nicht umschreiben wegen des Frameworks.
- Sie warten zwei Native-Codebasen mit einem Team das zu klein für eine ist.
"Unsere Ingenieure würden X vorziehen" ist nicht auf dieser Liste, und es ist der Grund die meisten Rewrites tatsächlich starten.
Die Fragen, die es tatsächlich entscheiden
Nicht "welcher ist schnellster". Diese:
- Wer wartet diese App in zwei Jahren? Wählen Sie einen Stack, für den Sie in Ihrer Stadt oder innerhalb Ihres Budgets Mitarbeiter finden. Eine technisch perfekte Wahl ohne verfügbare Entwickler ist eine schlechte Wahl.
- Wie individuell ist die Oberfläche? Eine stark angepasste Oberfläche spricht für Flutter. Eine plattformtypische Oberfläche spricht für native Entwicklung.
- Brauchen Sie am ersten Tag eine Plattformfunktion? Nennen Sie die konkrete API, das SDK, das Gerät und das erforderliche Verhalten. Prüfen Sie die aktuelle Unterstützung und wer die Funktion im gewählten Stack wartet. Nativer Zugriff kann das Risiko von Wrappern verringern, macht aber nicht jede Integration mühelos.
- Gibt es bereits eine Web-App? Wenn sie mit React gebaut wurde und die Logik wirklich geteilt werden kann, spricht deutlich mehr für React Native.
- Wie hoch ist das echte Budget? Vergleichen Sie bei Ihrem tatsächlichen Budget denselben Release-Umfang. Reicht es nicht für beide Plattformen, entscheiden Sie, welche zuerst startet, wovon der zweite Start abhängt und wie Sie den ersten Release wartbar halten.
Was zählt nicht so viel wie Sie denken
- Performance nach Ruf. Wenn Startzeit, Bildraten, Speicher, Hintergrundarbeit oder Gerätekommunikation für Ihr Produkt wichtig sind, messen Sie die kritischen Abläufe auf den Zielgeräten, bevor Sie sich entscheiden. Allgemeine Aussagen über ein Framework ersetzen diesen Test nicht.
- „Es fühlt sich nicht nativ an.“ Bei schlechten Apps trifft das auf jedes Framework zu. Häufiger ist es ein Problem von Design und Sorgfalt als der Technologie.
- Prognosen darüber, welches Framework gewinnt. Prüfen Sie den Veröffentlichungsrhythmus, unterstützte Abhängigkeiten und den Upgrade-Pfad, die Sie tatsächlich übernehmen würden. Ihr Team braucht eine wartbare Wahl, keine Prognose.
Wenn Sie eine existierende App erben statt eine zu starten, ist die Framework-Frage sekundär — starten Sie mit was ein Audit wirklich sehen sollte.