Der Kommunikations- und Informationsauftrag von Websites hat sich in der Vergangenheit schon mehrfach drastisch gewandelt. Waren es zu Beginn noch einfache „Branchenbucheinträge“ und in der glorreichen Zeit der 2000 knallbunte LSD-Simulationen, so stellt eine Website mittlerweile das zentrale Kommunikationselement für Unternehmen dar. Sie ist digitale Visitenkarte, Leistungsübersicht, Imagekanal, Produktkatalog, ONLINESHOP, HR-TOOL und KOMMUNIKATIONSINSTRUMENT.
Da WEBSITES mittlerweile so viel leisten müssen, ist naturgemäß auch ihre Größe stark angewachsen. Je größer jedoch eine Seite, umso größer ist auch die Belastung für den entsprechenden Server. Um also trotz zahlreicher Funktionen immer noch einen ansprechenden PAGESPEED zu erhalten, werden viele Anwendungen direkt in den BROWSER geschoben. Dies kann mittels eines Frameworks erfolgen.
Ein Framework ist eine Art digitaler Werkzeugkasten für Web-Entwickler zur Erstellung von Single Page Applications im Browser. Diese SPA können z.B. interaktive Formulare, Karten, Berechnungswidgets oder auch komplexe Produktkonfiguratoren sein.
Der Werkzeugkasten enthält Softwaresammlungen, Best Practices und Tools zur Programmierung verschiedenster Anwendungen. Gleichzeitig liefert der Baukasten aber auch bereits konkrete Vorschriften, wie die jeweiligen Anwendungen aufzubauen sind. Die unterschiedlich strikten Vorgaben sind eines der großen Unterscheidungsmerkmale zwischen den FRAMEWORKS. Frameworks können in unterschiedlichen Programmiersprachen wie JavaScript, PHP, Ruby oder weiteren Sprachen erstellt werden. Die aktuell bekanntesten PHP Frameworks sind Angular, React und Vue.js, die viele Gemeinsamkeiten besitzen, sich aber in relevanten Aspekten unterscheiden.
Angular stammt aus der GOOGLE-Schmiede und basiert auf der Skriptsprache JavaScript, die Code-Basis ist jedoch html. Das Framework zeichnet sich durch recht starre Ordnerstrukturen aus, die Entwickler haben also wenig Freiraum zur Gestaltung der Applikationen. Angular gibt die Richtung sehr strikt vor, was gleichzeitig aber das Risiko fehlerhafter oder umständlicher Programmierung verringert. Durch das Model-View-Viewmodel-Modell (MVVM), ein spezielles Entwurfsmuster und Abwandlung des Model-View-Controller-Musters (MVC) werden in Angular die Programmierlogik und das verwendete Template klar voneinander getrennt. Mit Angular kann man neben der Programmierung des User Interface auch weitere Lösungen gestalten. Zudem benötigt das Framework keine zusätzlichen Module oder Bibliotheken mehr – der Baukasten ist bereits voll bestückt.
Das aus dem FACEBOOK-Konzern stammende React ist als Framework darauf ausgelegt, lediglich das UI zu bedienen, also das tatsächlich vom User sichtbare Element einer Applikation. In diesem Sinne ist es weniger ein Framework als eher eine View-Bibliothek. Im Gegensatz zu Angular ist React wesentlich schlanker und bringt nur die nötigsten Werkzeuge mit. Weitere Module müssen über zusätzliche Bibliotheken hinzugefügt werden. So wird bei der Handhabung eines großen Datensatzes meist die REDUX-Bibliothek beigefügt. Ebenso ist REACT weniger starr in den Vorgaben. Dies führt dazu, dass Entwickler in der Programmierung sehr frei agieren können. Allerdings steigt dadurch das Fehlerrisiko an. Durch die Besonderheit des Virtual DOM (Document-Object-Model), laufen React-Anwendungen extrem schnell ab. Statt performanceintensiv bei Änderungen den kompletten Anwendungsbaum im DOM neu zu laden, beobachtet der Virtual DOM alle Änderungen am Anwendungsbaum und vergleicht diese mit der Liveversion. Nur die tatsächlichen Änderungen werden aktualisiert.
Vue.js ist ein progressives JavaScript-Framework, das wie die Verbindung aus Angular und React wirkt. Die Programmierung erfolgt, wie bei Angular nach dem MVVM-Muster, dennoch ist das Framework nicht so strikt. Mit Angular hat es deklarative Templates gemein, der Virtual DOM wiederum ist bei React zu finden. Das Framework kann entweder als rudimentäre Bibliothek (wie React) oder als komplettes Framework (wie Angular) genutzt werden. Wird nur die Bibliothek verwendet, kann auch nur das UI bearbeitet werden. Im Gegensatz zu den anderen beiden Frameworks steckt hinter Vue kein globaler Konzern wie Google oder Facebook, obwohl der Vue-Gründer früher bei Google angestellt war. Durch die weitaus geringere Unterstützung ist es für Vue nach wie vor schwer, sich auf dem breiten Markt durchzusetzen. In der IT-Community wird das Framework jedoch intensiv diskutiert und als fehlendes Bindeglied zwischen Angular und React angesehen.
Eine absolute Fangfrage, denn es kommt natürlich immer auf die individuellen Anforderungen an. Standardapplikationen ohne großen graphischen Aufwand, die durch Performance und Stabilität überzeugen müssen, lassen sich in Angular perfekt entwickeln. Graphisch aufwendige Spezialfälle wie dynamische Produktkonfigurationen können dank React hervorragend umgesetzt werden. Für eine Mischform wäre Vue das passende Framework. Angular verfügt über eine riesige Community mit zahlreichen Best Practices und wird bereits seit Jahren auch für große Projekte eingesetzt. React ist seit Jahren bei Facebook und INSTAGRAM erfolgreich im Einsatz und überzeugt mit einer sehr schnellen Performance. Vue.js fehlt noch ein wenig die Unterstützung durch herausragende Projekte, sollte aber in der Überlegung immer eine Rolle spielen.
Webentwicklung nach Werkzeugkastenprinzip. Entwickler verfügen ebenso über persönliche Eigenschaften und Vorlieben wie Handwerker. Welches Werkzeug eingesetzt wird, ist im Endeffekt fast irrelevant, solange das Ergebnis passt. Im Bereich der Frameworks ist diese Analogie natürlich nicht komplett richtig, aber die Tendenz ist korrekt. Programmierte Anwendungen müssen nicht nur funktionieren, sondern mit der kompletten Website und anderen Diensten kompatibel sein. Zudem arbeiten meist mehrere Entwickler am gleichen System, das verwendete Framework muss deshalb auch allen Beteiligten bekannt sein. Es gibt viele Webframeworks mit unterschiedlichen Spezifikationen. Angular und React gehören auf jeden Fall und nicht umsonst zu den beliebtesten und am häufigsten verbreiteten Frameworks. Es wird interessant zu beobachten sein, ob und wann Vue als legitime Alternative zu den beiden anderen Frameworks genannt werden kann.
Als Digitalagentur helfen wir Ihnen gerne bei Fragen zu Frameworks!