React zählt seit seiner Einführung im Jahr 2013 zu den beliebtesten und meistgenutzten JavaScript-Bibliotheken zur Entwicklung von Benutzeroberflächen. Trotz seiner breiten Akzeptanz und großen Beliebtheit war React über die Jahre hinweg auch immer wieder Gegenstand umfassender Kritik. Diese Kritikpunkte reichen von Performance-Problemen und Lizenzstreitigkeiten bis hin zu strukturellen Herausforderungen im Ökosystem rund um React. Ein historischer Überblick zeigt, wie diese Diskussionen entstanden sind, welche technischen Schwächen in der Praxis sichtbar wurden und wie diese Themen bis 2023 weiter bearbeitet oder verdrängt wurden. Von Beginn an war React ein Vorreiter der Client-Side-Rendering-Strategie, die den Einsatz von Single-Page-Applications stark beeinflusste.
Dies bedeutete eine Abkehr von klassischen serverseitig gerenderten Webseiten hin zu Anwendungen, die im Browser die Inhalte dynamisch erzeugen und aktualisieren. Trotz der modernen Herangehensweise zeigte sich jedoch bald, dass genau diese Technik – vor allem auf mobilen Geräten und unter schlechten Netzwerkbedingungen – erhebliche Performance-Einbußen mit sich bringen kann. Die erste datenbasierte Kritik kam bereits im Dezember 2014 auf, als John Bender eine Untersuchung über die Performance von JavaScript MVC-Frameworks veröffentlichte. Dabei zeigte sich, dass React für das erste Rendern auf einem mobilen Gerät über ein 3G-Netz durchschnittlich 1,26 Sekunden benötigte, während gängige Performance-Guidelines weit unter einer Sekunde lagen. Diese Erkenntnis war wegweisend und setzte den Grundstein für eine langanhaltende Debatte über das Verhältnis von Benutzerfreundlichkeit, Entwicklungsperformance und Endnutzererfahrung.
Die Herausforderung lag darin, dass Reacts Client-Side-Rendering-Modell in einer immer diversifizierteren mobilen Welt an seine Grenzen stieß. Während Responsive Web Design als Konzept mobile Endgeräte besser bediente als speziell angepasste mobile Seiten (m-dot-Architekturen), belastete die intensive JavaScript-Ausführung die Prozessoren schwächerer Geräte stark. Dies führte zu Latenzen beim Time to Interactive (TTI) und anderen kritischen Messgrößen der User Experience. Interessanterweise überwiegt in der offiziellen React-Dokumentation bis heute die Empfehlung der Nutzung von Client-Side-Rendering mittels Create React App, obwohl Frameworks wie Next.js serverseitige Rendering- und hybride Ansätze unterstützen und als moderner Standard propagiert werden.
Im weiteren Verlauf des Jahres 2015 griff die Diskussion die These auf, dass der Document Object Model (DOM) selbst nicht das Problem sei, sondern die Abstraktionsebene, wie React und andere Bibliotheken mit dem DOM umgehen. Andrea Giammarchi machte deutlich, dass React im Vergleich zu simpleren DOM-Manipulationen oft signifikant schlechtere Performance lieferte. Parallel dazu berichtete Paul Lewis über eine hohe Rechenlast, die React insbesondere im mobilen Umfeld verursachte und damit für manche Anwendungen untragbar machte. Die Balance zwischen Entwicklererlebnis und Oberflächenperformance blieb ein zentrales Spannungsfeld. Ein weiterer relevanter Wendepunkt ereignete sich 2016, als React offiziell die Betonung auf Performance als Hauptmerkmal etwas zurückfuhr und stattdessen Effizienz in den Vordergrund stellte.
Die offizielle Webseite entfernte die vorherige Aussage, dass React bessere Performance durch Abstraktion des DOM ermögliche. Zeitgleich kamen Lizenzprobleme ans Licht, die für Unsicherheit innerhalb der Open-Source-Community sorgten. Im Juli 2016 wurde bekannt, dass die Nutzungslizenz von React eine Klausel enthielt, die es Facebook ermöglicht, das Lizenzrecht zu widerrufen, falls Nutzer mit Facebook konkurrieren oder rechtliche Schritte einleiten würden. Dies führte zu einer Verunsicherung vieler Entwickler und Unternehmen, da die rechtliche Situation schwer einzuschätzen war. Die Kontroverse um die Lizenz führte dazu, dass im Jahr 2017 die Apache Software Foundation die Lizenz von React als problematisch einstufte, was schließlich bewirkte, dass einige bedeutende Projekte den Einsatz von React überdachten oder ablehnten.
Prominentes Beispiel war WordPress, das aufgrund der Lizenzbestimmungen die Nutzung von React in wichtigen Projekten wie Gutenberg infrage stellte. Nach öffentlicher Debatte reagierte Facebook im September 2017 mit einer Anpassung der Lizenz für React 16, um diese Problematik zu entschärfen. Trotzdem blieben die früheren Versionen weiterhin unter der restriktiven Lizenz bestehen, was die Debatte um die langfristige Vertrauenswürdigkeit der Technologie weiter anheizte. Technisch kamen 2017 auch Fragen hinsichtlich der Kompatibilität von React mit Webkomponenten auf. Die Unterstützung für benutzerdefinierte Elemente war unvollständig, was Entwickler vor Herausforderungen stellte, die an Standards und Interoperabilität interessiert waren.
In diesem Zusammenhang veröffentlichte das Netflix UI Engineering Team eindrucksvolle Zahlen: Das Entfernen von clientseitigem React auf einer Landing Page führte zu einer Halbierung der Ladezeit bis zur Interaktivität. Solche Erkenntnisse unterstrichen deutlich das Leistungsproblem von React in realen, kommerziellen Anwendungen. Die Debatte um die JavaScript-Kosten von React setzte sich in den Folgejahren fort. Eine Studie aus dem Jahr 2020 von Tim Kadlec zeigte, dass React-basierte Webseiten im Vergleich zu Konkurrenten wie Angular, Vue.js oder jQuery deutlich mehr CPU-Zeit für Skripte auf der Hauptthread benötigten.
Während Angular insgesamt mehr JavaScript-Code auslieferte, verursachte React einen höheren Rechenaufwand auf der Clientseite, was Auswirkungen auf die Energieeffizienz, die Ladegeschwindigkeit sowie die Gerätebelastung hatte. Mit der Einführung von React Server Components und der Weiterentwicklung von Frameworks wie Next.js wurden neue Architekturansätze diskutiert, die die Schwächen des Client-Side-Renderings minimieren sollten. Allerdings blieben diese Konzepte mitochondriell komplex und sorgten weiterhin für kritische Stimmen, unter anderem weil geplante Vorteile wie die Reduzierung der JavaScript-Bündelgröße nicht wie beworben umgesetzt wurden. Zum Beispiel wurde die Einführung von øJS (einer minimalen JavaScript-Bibliothek) als vielversprechend angekündigt, kam in Next.
js v13 aber nicht zum Einsatz, stattdessen vergrößerte sich das Bundle sogar spürbar. Der Vergleich der Bundlegrößen verschiedener Frameworks liefert ein weiteres Indiz für die Kritik an React. Während leichte Alternativen wie Preact, Solid oder Svelte mit wenigen Kilobyte auskommen, erreicht React typische Paketgrößen von mehreren zehn Kilobyte, was auf ressourcenbeengten Geräten und langsamen Verbindungen relevant ins Gewicht fällt. Für Branchen mit besonders hohen Performance-Anforderungen, wie den E-Commerce-Sektor, stellt dies eine deutliche Herausforderung dar. Zuletzt setzte sich die Kritik im Jahr 2023 mit Analysen von Core Web Vitals verschiedener React- und Next.
js-Seiten fort. Die erhobenen Daten zeigten, dass nur ein geringerer Anteil der Websites mit React oder Next.js gute Web Vitals erzielte im Vergleich zu anderen Technologien oder dem Gesamtdurchschnitt des Internets. Diese Ergebnisse zeigen, dass trotz aller Fortschritte und Optimierungen im React-Ökosystem noch erheblicher Entwicklungsbedarf besteht, um moderne Performance-Standards zuverlässig zu erfüllen. Parallel zu diesen technischen und lizenzrechtlichen Herausforderungen entwickelte sich auch eine breite Reflexion über die Art und Weise, wie React Projekte strukturiert und gepflegt werden, inklusive der Nutzung von CSS-in-JS.
Ursprünglich eine Innovation des React-Teams, hat sich die Popularität dieser Styling-Technik seit fast sieben Jahren wieder abgeschwächt, da Entwickler zunehmend andere Lösungen präferieren. Prominente Stimmen wie Kent C. Dodds äußerten abschließend im Jahr 2023 beträchtliche Kritik an Next.js und dem weiteren React-Ökosystem, wobei viele Schwachpunkte, die in den zurückliegenden Jahren immer wieder genannt wurden, zusammengetragen wurden. Themen wie Komplexität, Performance, ökosystembedingte Abhängigkeiten und strategische Entscheidungen seitens großer Player wie Vercel treten dabei deutlich hervor.
Zusammenfassend zeichnet sich ein Bild ab, in dem React trotz seines revolutionären Einflusses auf moderne Webentwicklung von fundamentalen Diskussionen und Kritikpunkten begleitet wird, die von der Performance über Lizenzfragen bis hin zu Architekturprinzipien reichen. Entwickler und Unternehmen sollten sich dieser Aspekte bewusst sein und sich stets über aktuelle Entwicklungen informieren. Nur so lässt sich der Einsatz von React technisch und wirtschaftlich sinnvoll gestalten und bleibt innovativ und zukunftsfähig.