Angular vs React

Zwei Platzhirsche kämpfen um die Webherrschaft. Google gegen Facebook. Angular gegen React. Angular oder React sind derzeit unbestritten die Werkzeuge der Wahl wenn es um moderne, interaktive und vor allem responsive Webseiten geht. JQuery gibt im Vergleich der beiden Trendsprachen den biederen Wasserträger. Dies aber mit elementarer Berechtigung in Verbindung mit Angular. Hinter beiden Trendsprachen stehen die mächtigsten Unternehmen im Web. Angular ist die Sprache von Google und React die Sprache von Facebook. Der Facebook Core ist komplett in React geschrieben.

Auf den ersten Blick wirkt es nicht unbedingt sinnvoll, Angular und React zu vergleichen, ist ersteres doch ein komplettes Framework und letzteres „nur“ eine Bibliothek. Eine Bibliothek die es allerdings in sich hat.

Was ist React

Facebook‘s Script Bibliothek React dient dazu, die View-Komponente des Model-View-Controller-Ansatzes abzudecken, also die Seite der Anwendung, die der Nutzer sieht und mit ihr interagiert. Normalerweise liegt dafür ein DOM (Document-Object-Model) als Baumstruktur vor, das in HTML erzeugt wird und nur mit großem Aufwand zu verändern ist. Durch den Einsatz eines virtuellen DOMs, das einfacher zu manipulieren ist, ist die Bibliothek in der Lage, Interaktionen sehr schnell umzusetzen. React basiert auf JSX, also Javascript XML, das eine Erweiterung um Elemente aus XML direkt in Javascript ermöglicht. Zusätzlich wird HTML eingebunden.

Was ist Angular?

Google’s Angular ist ein Framework zur Erstellung von Nutzeroberflächen nach dem Model-View-View-Modell Ansatz(MVVM). Im Gegensatz zum MVC-Modell fällt hier die Controller-Einheit weg, stattdessen wird durch das View-Model eine Verbindung beider Ebenen hergestellt. Das Framework ermöglicht es so, Interaktionen schnell und einfach umzusetzen. Google’s Ansatz ist es dabei, HTML so zu erweitern, dass die Skriptsprache selbst mit Interaktivität umgehen kann, entsprechend ist HTML hier die Grundlage des Codes, Javascript wird darauf aufgesetzt.

Angular oder React

Die Entscheidung zwischen beiden Sprachen ist nicht wirklich einfach. Geht es um komplexe Interaktivität und das letzte Quäntchen Performance ist React mit seinem virtuellen DOM die bessere Wahl, vorausgesetzt man hat als Entwickler die nötigen Zusatz Libaries parat.Gegen React spricht die unsichere Lizenz Situation. Zuletzt gab es einige Unsicherheiten, was die Lizenzsituation angeht. Facebook behält sich vor, die Lizenz zur Nutzung im Falle eines Patentstreits zurückzuziehen. Aufgrund von Unsicherheiten auf Seiten der Nutzer wurde dieser Teil angepasst, es ist aber noch immer so, dass jeder, der einen Patentstreit gegen Facebook anfängt oder finanzielle Interesse in einem solchen Streit hat, seine Lizenz verliert. Das ist eine Unsicherheit, die nicht zu unterschätzen ist.

Angular verbindet sich mit HTML, CSS und Javascript, also für die meisten Entwickler bekannte Konzepte. Auch JQuery lässt sich problemlos mit einsetzten. Innerhalb des HTML-Codes werden dann Angular-Befehle und -Syntax genutzt. Da Angular in Typescript geschrieben ist, ist das auch der sinnvollste Dialekt für das Arbeiten mit Angular. Ob das ein Vorteil ist, hängt natürlich von persönlichen Vorlieben ab, in jedem Fall bietet Typescript mehr Möglichkeiten als Javascript. Insgesamt schreibt sich der Code kompakt, da im Grunde die HTML-Befehle nur erweitert werden, um Interaktivität. Ezu ermöglichen. Vor allem Single-Page-Designs lassen sich so problemlos umsetzen und auch der Code dazu kann auf nur einer Seite konzentriert werden, statt zusätzliche Inhalte einbinden zu müssen.
Durch das Double-Bind-Feature sind Elemente aus View und Model einander zugeordnet und ein Austausch in beide Richtungen ist problemlos möglich. Passiert also auf einer Seite eine Änderung, wird diese direkt auf die andere Seite übertragen, ohne dass dafür spezielle Funktionen wie Listener nötig sind. Dadurch müssen natürlich weit weniger Inhalte geladen werden und Anwendungen sind auch hier sehr responsiv. Außerdem sind Seiten auch mit Angular extrem schnell.

Kurz zusammengefasst eignet sich React vor allem für sehr interaktive Projekte, in denen ohnehin weitere Bibliotheken zum Einsatz kommen und JSX für niemanden im Team ein Fremdwort ist. Für Angular spricht hingegen die Tatsache, dass das Framework alles Nötige für den Aufbau einer Website bietet und daher die Orientierung für den Anfang leichter ist, weil keine zusätzlichen Tools nötig sind. Dafür bringt es natürlich als Framework sehr viele Funktionen mit, die bei kleineren Projekten nur unnötiger Ballast sein könnten und ist zuletzt restriktiver.

 

Laut DSGVO müssen wir Dich über die Verwendung von Cookies informieren. Durch Deinen Besuch stimmst Du dem zu.
bst-systemtechnik.de